{"version":3,"file":"signup.js","mappings":"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","sources":["webpack:///webpack/runtime/chunk loaded","webpack:///./Client/api/ApiClient.ts","webpack:///./Client/components/Checkbox.tsx","webpack:///./Client/components/Input.tsx","webpack:///./Client/components/DateInput.tsx","webpack:///./Client/components/EanInput.tsx","webpack:///./Client/components/EmailInput.tsx","webpack:///./Client/components/RadioGroup.tsx","webpack:///./Client/components/MultiselectGroup.tsx","webpack:///./Client/components/PhoneInput.tsx","webpack:///./Client/components/PidInput.tsx","webpack:///./Client/components/Spinner.tsx","webpack:///./Client/services/QueryString.ts","webpack:///./Client/utils/FetchStatus.ts","webpack:///./Client/signup/ConfirmModal.tsx","webpack:///./Client/signup/NykvarnClubSelection.tsx","webpack:///./Client/signup/HowItWorksModal.tsx","webpack:///./Client/signup/PriceDescriptionModal.tsx","webpack:///./Client/signup/PriceCalculator.tsx","webpack:///./Client/signup/SavingsDescriptionModal.tsx","webpack:///./Client/signup/SignupForm.tsx","webpack:///./Client/signup/SavingsCalculator.tsx","webpack:///./Client/signup/SignupApp.tsx","webpack:///./Client/entries/client/Signup.tsx","webpack:///./node_modules/moment/locale/ sync (sv(\\.js)","webpack:///webpack/bootstrap","webpack:///webpack/runtime/amd options","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/node module decorator","webpack:///webpack/runtime/runtimeId","webpack:///webpack/runtime/jsonp chunk loading","webpack:///webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","//----------------------\r\n// \r\n// Generated using the NSwag toolchain v13.15.10.0 (NJsonSchema v10.6.10.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)\r\n// \r\n//----------------------\r\n\r\n/* tslint:disable */\r\n/* eslint-disable */\r\n// ReSharper disable InconsistentNaming\r\n\r\nimport { Config } from \"./Config\";\r\nimport * as moment from 'moment';\r\n\r\nexport class ClientBase {\r\n private token: string;\r\n\r\n protected getBaseUrl(defaultUrl: string): string {\r\n return ClientConfig.ApiBaseUrl;\r\n }\r\n\r\n protected transformOptions(options: RequestInit): Promise {\r\n if (this.token) {\r\n options.headers[\"Authorization\"] = \"Bearer \" + this.token;\r\n }\r\n return new Promise(resolve => resolve(options));\r\n }\r\n\r\n public setToken(token: string): void {\r\n this.token = token;\r\n }\r\n}\r\n\r\nexport class AddressClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getByPid(pid: string, signal?: AbortSignal | undefined): Promise
{\r\n let url_ = this.baseUrl + \"/address/{Pid}\";\r\n if (pid === undefined || pid === null)\r\n throw new Error(\"The parameter 'pid' must be defined.\");\r\n url_ = url_.replace(\"{Pid}\", encodeURIComponent(\"\" + pid));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetByPid(_response);\r\n });\r\n }\r\n\r\n protected processGetByPid(response: Response): Promise
{\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Address.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve
(null as any);\r\n }\r\n}\r\n\r\nexport class AdminClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getObjects(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/objects\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetObjects(_response);\r\n });\r\n }\r\n\r\n protected processGetObjects(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RealEstateObjectDbModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getObjectFile(id: string, fileId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/objects/{id}/file/{fileId}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n if (fileId === undefined || fileId === null)\r\n throw new Error(\"The parameter 'fileId' must be defined.\");\r\n url_ = url_.replace(\"{fileId}\", encodeURIComponent(\"\" + fileId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/octet-stream\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetObjectFile(_response);\r\n });\r\n }\r\n\r\n protected processGetObjectFile(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200 || status === 206) {\r\n const contentDisposition = response.headers ? response.headers.get(\"content-disposition\") : undefined;\r\n const fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\r\n const fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\r\n return response.blob().then(blob => { return { fileName: fileName, data: blob, status: status, headers: _headers }; });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n markAsHandled(objectId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/objects/{objectId}/handled\";\r\n if (objectId === undefined || objectId === null)\r\n throw new Error(\"The parameter 'objectId' must be defined.\");\r\n url_ = url_.replace(\"{objectId}\", encodeURIComponent(\"\" + objectId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processMarkAsHandled(_response);\r\n });\r\n }\r\n\r\n protected processMarkAsHandled(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RealEstateObjectDbModel.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n listAvyInvoicings(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/avy-invoicings\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processListAvyInvoicings(_response);\r\n });\r\n }\r\n\r\n protected processListAvyInvoicings(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Invoicing.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n avyInvoicing(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/avy-invoicings/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAvyInvoicing(_response);\r\n });\r\n }\r\n\r\n protected processAvyInvoicing(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AvyInvoicing.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param status (optional) \r\n * @return Success\r\n */\r\n listAvyInvoices(id: string, status: AvyInvoiceStatus | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/avy-invoicings/{id}/invoices?\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n if (status === null)\r\n throw new Error(\"The parameter 'status' cannot be null.\");\r\n else if (status !== undefined)\r\n url_ += \"Status=\" + encodeURIComponent(\"\" + status) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processListAvyInvoices(_response);\r\n });\r\n }\r\n\r\n protected processListAvyInvoices(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(AvyInvoice.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n sendAvyInvoice(invoicingId: string, invoiceId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/avy-invoicings/{invoicingId}/invoices/{invoiceId}/send\";\r\n if (invoicingId === undefined || invoicingId === null)\r\n throw new Error(\"The parameter 'invoicingId' must be defined.\");\r\n url_ = url_.replace(\"{invoicingId}\", encodeURIComponent(\"\" + invoicingId));\r\n if (invoiceId === undefined || invoiceId === null)\r\n throw new Error(\"The parameter 'invoiceId' must be defined.\");\r\n url_ = url_.replace(\"{invoiceId}\", encodeURIComponent(\"\" + invoiceId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSendAvyInvoice(_response);\r\n });\r\n }\r\n\r\n protected processSendAvyInvoice(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AvyInvoice.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n mspecsOrdersMissingFiles(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs-orders/missing-files\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processMspecsOrdersMissingFiles(_response);\r\n });\r\n }\r\n\r\n protected processMspecsOrdersMissingFiles(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(MspecsOrder.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n mspecsOrderFiles(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs-orders/{id}/files\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processMspecsOrderFiles(_response);\r\n });\r\n }\r\n\r\n protected processMspecsOrderFiles(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(MspecsFile.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n mspecsOrderComplete(id: string, body: MspecsCompleteOrderRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs-orders/{id}/complete\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processMspecsOrderComplete(_response);\r\n });\r\n }\r\n\r\n protected processMspecsOrderComplete(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = MspecsOrder.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class AuthenticationClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n initiate(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/authentication/initiate\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInitiate(_response);\r\n });\r\n }\r\n\r\n protected processInitiate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BankIdInitResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param qrState (optional) \r\n * @return Success\r\n */\r\n status(orderRef: string, qrState: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/authentication/status/{orderRef}?\";\r\n if (orderRef === undefined || orderRef === null)\r\n throw new Error(\"The parameter 'orderRef' must be defined.\");\r\n url_ = url_.replace(\"{orderRef}\", encodeURIComponent(\"\" + orderRef));\r\n if (qrState === null)\r\n throw new Error(\"The parameter 'qrState' cannot be null.\");\r\n else if (qrState !== undefined)\r\n url_ += \"qrState=\" + encodeURIComponent(\"\" + qrState) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processStatus(_response);\r\n });\r\n }\r\n\r\n protected processStatus(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = StatusResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n initiateSignature(body: SignInitiateRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/authentication/initiate-signature\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInitiateSignature(_response);\r\n });\r\n }\r\n\r\n protected processInitiateSignature(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BankIdInitResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param pid (optional) \r\n * @return Success\r\n */\r\n generateToken(pid: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/authentication/generate-token?\";\r\n if (pid === null)\r\n throw new Error(\"The parameter 'pid' cannot be null.\");\r\n else if (pid !== undefined)\r\n url_ += \"pid=\" + encodeURIComponent(\"\" + pid) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGenerateToken(_response);\r\n });\r\n }\r\n\r\n protected processGenerateToken(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = TokenResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param requestToken (optional) \r\n * @return Success\r\n */\r\n authenticateToken(requestToken: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/authentication/authenticate-token?\";\r\n if (requestToken === null)\r\n throw new Error(\"The parameter 'requestToken' cannot be null.\");\r\n else if (requestToken !== undefined)\r\n url_ += \"requestToken=\" + encodeURIComponent(\"\" + requestToken) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAuthenticateToken(_response);\r\n });\r\n }\r\n\r\n protected processAuthenticateToken(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AuthenticationResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class Client extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param returnUrl (optional) \r\n * @param uiOptions (optional) \r\n * @return Success\r\n */\r\n auth(returnUrl: string | undefined, uiOptions: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/ActiveLogin/BankId/Auth?\";\r\n if (returnUrl === null)\r\n throw new Error(\"The parameter 'returnUrl' cannot be null.\");\r\n else if (returnUrl !== undefined)\r\n url_ += \"returnUrl=\" + encodeURIComponent(\"\" + returnUrl) + \"&\";\r\n if (uiOptions === null)\r\n throw new Error(\"The parameter 'uiOptions' cannot be null.\");\r\n else if (uiOptions !== undefined)\r\n url_ += \"uiOptions=\" + encodeURIComponent(\"\" + uiOptions) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAuth(_response);\r\n });\r\n }\r\n\r\n protected processAuth(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n initialize(body: BankIdUiApiInitializeRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/ActiveLogin/BankId/Auth/Api/Initialize\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInitialize(_response);\r\n });\r\n }\r\n\r\n protected processInitialize(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = BankIdUiApiInitializeResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n status(body: BankIdUiApiStatusRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/ActiveLogin/BankId/Auth/Api/Status\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processStatus(_response);\r\n });\r\n }\r\n\r\n protected processStatus(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n qrCode(body: BankIdUiApiQrCodeRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/ActiveLogin/BankId/Auth/Api/QrCode\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processQrCode(_response);\r\n });\r\n }\r\n\r\n protected processQrCode(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n cancel(body: BankIdUiApiCancelRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/ActiveLogin/BankId/Auth/Api/Cancel\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCancel(_response);\r\n });\r\n }\r\n\r\n protected processCancel(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n contacts(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/api/Contacts/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processContacts(_response);\r\n });\r\n }\r\n\r\n protected processContacts(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Contact.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n anonymous(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAnonymous(_response);\r\n });\r\n }\r\n\r\n protected processAnonymous(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class ContactClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n create(body: Contact | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/api/Contacts\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreate(_response);\r\n });\r\n }\r\n\r\n protected processCreate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Contact.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class EasyPriceClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n contact(body: EasyLead | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/site/contact\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processContact(_response);\r\n });\r\n }\r\n\r\n protected processContact(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param nrOfDeliveries (optional) \r\n * @return Success\r\n */\r\n calculate(nrOfDeliveries: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/site/prices?\";\r\n if (nrOfDeliveries === null)\r\n throw new Error(\"The parameter 'nrOfDeliveries' cannot be null.\");\r\n else if (nrOfDeliveries !== undefined)\r\n url_ += \"NrOfDeliveries=\" + encodeURIComponent(\"\" + nrOfDeliveries) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCalculate(_response);\r\n });\r\n }\r\n\r\n protected processCalculate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = EasyPriceResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class EnodeClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n callback(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/callback\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCallback(_response);\r\n });\r\n }\r\n\r\n protected processCallback(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n syncVehicles(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles/sync\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSyncVehicles(_response);\r\n });\r\n }\r\n\r\n protected processSyncVehicles(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(VehicleModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getVehicle(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetVehicle(_response);\r\n });\r\n }\r\n\r\n protected processGetVehicle(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = VehicleModel.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getVehicles(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetVehicles(_response);\r\n });\r\n }\r\n\r\n protected processGetVehicles(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(VehicleModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n disconnectVendor(vendor: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vendor/{vendor}\";\r\n if (vendor === undefined || vendor === null)\r\n throw new Error(\"The parameter 'vendor' must be defined.\");\r\n url_ = url_.replace(\"{vendor}\", encodeURIComponent(\"\" + vendor));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDisconnectVendor(_response);\r\n });\r\n }\r\n\r\n protected processDisconnectVendor(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(VehicleModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param deadline (optional) \r\n * @param minimumChargeLimit (optional) \r\n * @return Success\r\n */\r\n setSmartCharging(vehicleId: string, deadline: string | undefined, minimumChargeLimit: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles/{vehicleId}/smart-charging-policy?\";\r\n if (vehicleId === undefined || vehicleId === null)\r\n throw new Error(\"The parameter 'vehicleId' must be defined.\");\r\n url_ = url_.replace(\"{vehicleId}\", encodeURIComponent(\"\" + vehicleId));\r\n if (deadline === null)\r\n throw new Error(\"The parameter 'deadline' cannot be null.\");\r\n else if (deadline !== undefined)\r\n url_ += \"deadline=\" + encodeURIComponent(\"\" + deadline) + \"&\";\r\n if (minimumChargeLimit === null)\r\n throw new Error(\"The parameter 'minimumChargeLimit' cannot be null.\");\r\n else if (minimumChargeLimit !== undefined)\r\n url_ += \"minimumChargeLimit=\" + encodeURIComponent(\"\" + minimumChargeLimit) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSetSmartCharging(_response);\r\n });\r\n }\r\n\r\n protected processSetSmartCharging(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SmartChargingResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n removeSmartCharging(vehicleId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles/{vehicleId}/smart-charging-policy\";\r\n if (vehicleId === undefined || vehicleId === null)\r\n throw new Error(\"The parameter 'vehicleId' must be defined.\");\r\n url_ = url_.replace(\"{vehicleId}\", encodeURIComponent(\"\" + vehicleId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processRemoveSmartCharging(_response);\r\n });\r\n }\r\n\r\n protected processRemoveSmartCharging(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SmartChargingResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n createSmartOverride(vehicleId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles/{vehicleId}/smart-override\";\r\n if (vehicleId === undefined || vehicleId === null)\r\n throw new Error(\"The parameter 'vehicleId' must be defined.\");\r\n url_ = url_.replace(\"{vehicleId}\", encodeURIComponent(\"\" + vehicleId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreateSmartOverride(_response);\r\n });\r\n }\r\n\r\n protected processCreateSmartOverride(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SmartChargingOverrideResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n deleteSmartOverride(vehicleId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/vehicles/{vehicleId}/smart-override\";\r\n if (vehicleId === undefined || vehicleId === null)\r\n throw new Error(\"The parameter 'vehicleId' must be defined.\");\r\n url_ = url_.replace(\"{vehicleId}\", encodeURIComponent(\"\" + vehicleId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDeleteSmartOverride(_response);\r\n });\r\n }\r\n\r\n protected processDeleteSmartOverride(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = SmartChargingOverrideResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param redirectUri (optional) \r\n * @param vendor (optional) \r\n * @return Success\r\n */\r\n getLinkUrl(redirectUri: string | undefined, vendor: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/link?\";\r\n if (redirectUri === null)\r\n throw new Error(\"The parameter 'redirectUri' cannot be null.\");\r\n else if (redirectUri !== undefined)\r\n url_ += \"redirectUri=\" + encodeURIComponent(\"\" + redirectUri) + \"&\";\r\n if (vendor === null)\r\n throw new Error(\"The parameter 'vendor' cannot be null.\");\r\n else if (vendor !== undefined)\r\n url_ += \"vendor=\" + encodeURIComponent(\"\" + vendor) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetLinkUrl(_response);\r\n });\r\n }\r\n\r\n protected processGetLinkUrl(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = EnodeLinkResult.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getUser(userId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/users/{userId}\";\r\n if (userId === undefined || userId === null)\r\n throw new Error(\"The parameter 'userId' must be defined.\");\r\n url_ = url_.replace(\"{userId}\", encodeURIComponent(\"\" + userId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetUser(_response);\r\n });\r\n }\r\n\r\n protected processGetUser(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = UserResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n unlinkUser(userId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/users/{userId}/unlink\";\r\n if (userId === undefined || userId === null)\r\n throw new Error(\"The parameter 'userId' must be defined.\");\r\n url_ = url_.replace(\"{userId}\", encodeURIComponent(\"\" + userId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUnlinkUser(_response);\r\n });\r\n }\r\n\r\n protected processUnlinkUser(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n deauthorizeUser(userId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/users/{userId}/deauthorize\";\r\n if (userId === undefined || userId === null)\r\n throw new Error(\"The parameter 'userId' must be defined.\");\r\n url_ = url_.replace(\"{userId}\", encodeURIComponent(\"\" + userId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDeauthorizeUser(_response);\r\n });\r\n }\r\n\r\n protected processDeauthorizeUser(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getLocations(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/locations\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetLocations(_response);\r\n });\r\n }\r\n\r\n protected processGetLocations(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Location.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param name (optional) \r\n * @param latitude (optional) \r\n * @param longitude (optional) \r\n * @param timeZoneName (optional) \r\n * @return Success\r\n */\r\n createLocation(name: string | undefined, latitude: number | undefined, longitude: number | undefined, timeZoneName: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/locations?\";\r\n if (name === null)\r\n throw new Error(\"The parameter 'name' cannot be null.\");\r\n else if (name !== undefined)\r\n url_ += \"Name=\" + encodeURIComponent(\"\" + name) + \"&\";\r\n if (latitude === null)\r\n throw new Error(\"The parameter 'latitude' cannot be null.\");\r\n else if (latitude !== undefined)\r\n url_ += \"Latitude=\" + encodeURIComponent(\"\" + latitude) + \"&\";\r\n if (longitude === null)\r\n throw new Error(\"The parameter 'longitude' cannot be null.\");\r\n else if (longitude !== undefined)\r\n url_ += \"Longitude=\" + encodeURIComponent(\"\" + longitude) + \"&\";\r\n if (timeZoneName === null)\r\n throw new Error(\"The parameter 'timeZoneName' cannot be null.\");\r\n else if (timeZoneName !== undefined)\r\n url_ += \"TimeZoneName=\" + encodeURIComponent(\"\" + timeZoneName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreateLocation(_response);\r\n });\r\n }\r\n\r\n protected processCreateLocation(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Location.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param name (optional) \r\n * @param latitude (optional) \r\n * @param longitude (optional) \r\n * @param timeZoneName (optional) \r\n * @return Success\r\n */\r\n updateLocation(locationId: string, name: string | undefined, latitude: number | undefined, longitude: number | undefined, timeZoneName: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/locations/{locationId}?\";\r\n if (locationId === undefined || locationId === null)\r\n throw new Error(\"The parameter 'locationId' must be defined.\");\r\n url_ = url_.replace(\"{locationId}\", encodeURIComponent(\"\" + locationId));\r\n if (name === null)\r\n throw new Error(\"The parameter 'name' cannot be null.\");\r\n else if (name !== undefined)\r\n url_ += \"Name=\" + encodeURIComponent(\"\" + name) + \"&\";\r\n if (latitude === null)\r\n throw new Error(\"The parameter 'latitude' cannot be null.\");\r\n else if (latitude !== undefined)\r\n url_ += \"Latitude=\" + encodeURIComponent(\"\" + latitude) + \"&\";\r\n if (longitude === null)\r\n throw new Error(\"The parameter 'longitude' cannot be null.\");\r\n else if (longitude !== undefined)\r\n url_ += \"Longitude=\" + encodeURIComponent(\"\" + longitude) + \"&\";\r\n if (timeZoneName === null)\r\n throw new Error(\"The parameter 'timeZoneName' cannot be null.\");\r\n else if (timeZoneName !== undefined)\r\n url_ += \"TimeZoneName=\" + encodeURIComponent(\"\" + timeZoneName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateLocation(_response);\r\n });\r\n }\r\n\r\n protected processUpdateLocation(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Location.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n deleteLocation(locationId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/locations/{locationId}/delete\";\r\n if (locationId === undefined || locationId === null)\r\n throw new Error(\"The parameter 'locationId' must be defined.\");\r\n url_ = url_.replace(\"{locationId}\", encodeURIComponent(\"\" + locationId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDeleteLocation(_response);\r\n });\r\n }\r\n\r\n protected processDeleteLocation(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getInterventionById(interventionId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/interventions/{interventionId}\";\r\n if (interventionId === undefined || interventionId === null)\r\n throw new Error(\"The parameter 'interventionId' must be defined.\");\r\n url_ = url_.replace(\"{interventionId}\", encodeURIComponent(\"\" + interventionId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetInterventionById(_response);\r\n });\r\n }\r\n\r\n protected processGetInterventionById(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Intervention.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @return Success\r\n */\r\n getChargingSessions(startDate: moment.Moment | undefined, endDate: moment.Moment | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/charging-sessions?\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"startDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toISOString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"endDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetChargingSessions(_response);\r\n });\r\n }\r\n\r\n protected processGetChargingSessions(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SessionsStatisticsTimeseries.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getSupportedModels(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/enode/supported-models\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetSupportedModels(_response);\r\n });\r\n }\r\n\r\n protected processGetSupportedModels(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SupportedModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class FasAdClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param file (optional) \r\n * @param objectId (optional) \r\n * @param channel (optional) \r\n * @return Success\r\n */\r\n uploadContract(file: FileParameter | undefined, objectId: string | undefined, channel: Channel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/fasad/contract\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = new FormData();\r\n if (file === null || file === undefined)\r\n throw new Error(\"The parameter 'file' cannot be null.\");\r\n else\r\n content_.append(\"File\", file.data, file.fileName ? file.fileName : \"File\");\r\n if (objectId === null || objectId === undefined)\r\n throw new Error(\"The parameter 'objectId' cannot be null.\");\r\n else\r\n content_.append(\"ObjectId\", objectId.toString());\r\n if (channel === null || channel === undefined)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else\r\n content_.append(\"Channel\", channel.toString());\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUploadContract(_response);\r\n });\r\n }\r\n\r\n protected processUploadContract(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param objectId (optional) \r\n * @return Success\r\n */\r\n notifyEsny(objectId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/fasad/notify-esny?\";\r\n if (objectId === null)\r\n throw new Error(\"The parameter 'objectId' cannot be null.\");\r\n else if (objectId !== undefined)\r\n url_ += \"objectId=\" + encodeURIComponent(\"\" + objectId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processNotifyEsny(_response);\r\n });\r\n }\r\n\r\n protected processNotifyEsny(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n updateOffices(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/fasad/update-offices\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateOffices(_response);\r\n });\r\n }\r\n\r\n protected processUpdateOffices(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param months (optional) \r\n * @return Success\r\n */\r\n updateStats(months: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/fasad/update-stats?\";\r\n if (months === null)\r\n throw new Error(\"The parameter 'months' cannot be null.\");\r\n else if (months !== undefined)\r\n url_ += \"months=\" + encodeURIComponent(\"\" + months) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateStats(_response);\r\n });\r\n }\r\n\r\n protected processUpdateStats(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class JobsClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n cancel(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/jobs/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCancel(_response);\r\n });\r\n }\r\n\r\n protected processCancel(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class MspecsClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n subscriptionCallbacks(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/subscribe\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSubscriptionCallbacks(_response);\r\n });\r\n }\r\n\r\n protected processSubscriptionCallbacks(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n dealCallbacks(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/deal\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDealCallbacks(_response);\r\n });\r\n }\r\n\r\n protected processDealCallbacks(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n listSubscriptions(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/list-subscriptions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processListSubscriptions(_response);\r\n });\r\n }\r\n\r\n protected processListSubscriptions(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(MspecsSubscriber.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n syncDeals(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/sync-deals\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSyncDeals(_response);\r\n });\r\n }\r\n\r\n protected processSyncDeals(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n unhandledCallbacks(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/unhandled-callbacks\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUnhandledCallbacks(_response);\r\n });\r\n }\r\n\r\n protected processUnhandledCallbacks(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n sendMissingFileNotification(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/send-missing-file/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSendMissingFileNotification(_response);\r\n });\r\n }\r\n\r\n protected processSendMissingFileNotification(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n finishDelivery(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/mspecs/finish-delivery/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processFinishDelivery(_response);\r\n });\r\n }\r\n\r\n protected processFinishDelivery(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class ObjectClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param objectNumber (optional) \r\n * @param accessDate (optional) \r\n * @param customerId (optional) \r\n * @param channel (optional) \r\n * @param salesChannel (optional) \r\n * @param expandDateSearchIfNotFound (optional) \r\n * @return Success\r\n */\r\n get(objectNumber: string | undefined, accessDate: moment.Moment | undefined, customerId: string | undefined, channel: RealEstateChannel | undefined, salesChannel: Channel | undefined, expandDateSearchIfNotFound: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/get?\";\r\n if (objectNumber === null)\r\n throw new Error(\"The parameter 'objectNumber' cannot be null.\");\r\n else if (objectNumber !== undefined)\r\n url_ += \"ObjectNumber=\" + encodeURIComponent(\"\" + objectNumber) + \"&\";\r\n if (accessDate === null)\r\n throw new Error(\"The parameter 'accessDate' cannot be null.\");\r\n else if (accessDate !== undefined)\r\n url_ += \"AccessDate=\" + encodeURIComponent(accessDate ? \"\" + accessDate.toISOString() : \"\") + \"&\";\r\n if (customerId === null)\r\n throw new Error(\"The parameter 'customerId' cannot be null.\");\r\n else if (customerId !== undefined)\r\n url_ += \"CustomerId=\" + encodeURIComponent(\"\" + customerId) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"Channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n if (salesChannel === null)\r\n throw new Error(\"The parameter 'salesChannel' cannot be null.\");\r\n else if (salesChannel !== undefined)\r\n url_ += \"SalesChannel=\" + encodeURIComponent(\"\" + salesChannel) + \"&\";\r\n if (expandDateSearchIfNotFound === null)\r\n throw new Error(\"The parameter 'expandDateSearchIfNotFound' cannot be null.\");\r\n else if (expandDateSearchIfNotFound !== undefined)\r\n url_ += \"ExpandDateSearchIfNotFound=\" + encodeURIComponent(\"\" + expandDateSearchIfNotFound) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGet(_response);\r\n });\r\n }\r\n\r\n protected processGet(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RealEstateObject.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param objectNumber (optional) \r\n * @param channel (optional) \r\n * @return Success\r\n */\r\n getFasadRaw(objectNumber: string | undefined, channel: Channel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/fasadRaw?\";\r\n if (objectNumber === null)\r\n throw new Error(\"The parameter 'objectNumber' cannot be null.\");\r\n else if (objectNumber !== undefined)\r\n url_ += \"objectNumber=\" + encodeURIComponent(\"\" + objectNumber) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetFasadRaw(_response);\r\n });\r\n }\r\n\r\n protected processGetFasadRaw(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class OfferClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param ip (optional) \r\n * @param no_tracking (optional) \r\n * @return Success\r\n */\r\n getById(id: string, ip: string | undefined, no_tracking: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/Offers/{id}?\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n if (ip === null)\r\n throw new Error(\"The parameter 'ip' cannot be null.\");\r\n else if (ip !== undefined)\r\n url_ += \"ip=\" + encodeURIComponent(\"\" + ip) + \"&\";\r\n if (no_tracking === null)\r\n throw new Error(\"The parameter 'no_tracking' cannot be null.\");\r\n else if (no_tracking !== undefined)\r\n url_ += \"no-tracking=\" + encodeURIComponent(\"\" + no_tracking) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetById(_response);\r\n });\r\n }\r\n\r\n protected processGetById(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Offer.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n unsubscribe(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/Offers/{id}/unsubscribe\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUnsubscribe(_response);\r\n });\r\n }\r\n\r\n protected processUnsubscribe(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Offer.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n create(body: Offer | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/Offers\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreate(_response);\r\n });\r\n }\r\n\r\n protected processCreate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Offer.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n send(offerId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/Offers/{offerId}/send\";\r\n if (offerId === undefined || offerId === null)\r\n throw new Error(\"The parameter 'offerId' must be defined.\");\r\n url_ = url_.replace(\"{offerId}\", encodeURIComponent(\"\" + offerId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSend(_response);\r\n });\r\n }\r\n\r\n protected processSend(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 201) {\r\n return response.text().then((_responseText) => {\r\n let result201: any = null;\r\n let resultData201 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result201 = resultData201 !== undefined ? resultData201 : null;\r\n \r\n return result201;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class OrderClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param preorder (optional) \r\n * @param body (optional) \r\n * @return Success\r\n */\r\n create(preorder: boolean | undefined, body: Order | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders?\";\r\n if (preorder === null)\r\n throw new Error(\"The parameter 'preorder' cannot be null.\");\r\n else if (preorder !== undefined)\r\n url_ += \"preorder=\" + encodeURIComponent(\"\" + preorder) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreate(_response);\r\n });\r\n }\r\n\r\n protected processCreate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 201) {\r\n return response.text().then((_responseText) => {\r\n let result201: any = null;\r\n let resultData201 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result201 = resultData201 !== undefined ? resultData201 : null;\r\n \r\n return result201;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param externalID (optional) \r\n * @return Success\r\n */\r\n getByGuid(externalID: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders?\";\r\n if (externalID === null)\r\n throw new Error(\"The parameter 'externalID' cannot be null.\");\r\n else if (externalID !== undefined)\r\n url_ += \"externalID=\" + encodeURIComponent(\"\" + externalID) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetByGuid(_response);\r\n });\r\n }\r\n\r\n protected processGetByGuid(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Order.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n completionEA(elavtalID: string, body: Order | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{elavtalID}/completionEA\";\r\n if (elavtalID === undefined || elavtalID === null)\r\n throw new Error(\"The parameter 'elavtalID' must be defined.\");\r\n url_ = url_.replace(\"{elavtalID}\", encodeURIComponent(\"\" + elavtalID));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCompletionEA(_response);\r\n });\r\n }\r\n\r\n protected processCompletionEA(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 201) {\r\n return response.text().then((_responseText) => {\r\n let result201: any = null;\r\n let resultData201 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result201 = resultData201 !== undefined ? resultData201 : null;\r\n \r\n return result201;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n completion(completionId: string, body: Order | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{completionId}/completion\";\r\n if (completionId === undefined || completionId === null)\r\n throw new Error(\"The parameter 'completionId' must be defined.\");\r\n url_ = url_.replace(\"{completionId}\", encodeURIComponent(\"\" + completionId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCompletion(_response);\r\n });\r\n }\r\n\r\n protected processCompletion(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 201) {\r\n return response.text().then((_responseText) => {\r\n let result201: any = null;\r\n let resultData201 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result201 = resultData201 !== undefined ? resultData201 : null;\r\n \r\n return result201;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getById(id: number, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetById(_response);\r\n });\r\n }\r\n\r\n protected processGetById(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Order.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n pdf(id: number, elavtalId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{id}/pdf/{elavtalId}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n if (elavtalId === undefined || elavtalId === null)\r\n throw new Error(\"The parameter 'elavtalId' must be defined.\");\r\n url_ = url_.replace(\"{elavtalId}\", encodeURIComponent(\"\" + elavtalId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processPdf(_response);\r\n });\r\n }\r\n\r\n protected processPdf(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Order.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getPdf(id: number, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{id}/pdf\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetPdf(_response);\r\n });\r\n }\r\n\r\n protected processGetPdf(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n sync(id: number, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{id}/sync\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSync(_response);\r\n });\r\n }\r\n\r\n protected processSync(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n cancelInsurance(id: number, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/{id}/cancel-insurance\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCancelInsurance(_response);\r\n });\r\n }\r\n\r\n protected processCancelInsurance(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class OrderStatusClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param elavtalID (optional) \r\n * @param company (optional) \r\n * @return Success\r\n */\r\n getByDeliveryID(elavtalID: string | undefined, company: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/orderStatus?\";\r\n if (elavtalID === null)\r\n throw new Error(\"The parameter 'elavtalID' cannot be null.\");\r\n else if (elavtalID !== undefined)\r\n url_ += \"elavtalID=\" + encodeURIComponent(\"\" + elavtalID) + \"&\";\r\n if (company === null)\r\n throw new Error(\"The parameter 'company' cannot be null.\");\r\n else if (company !== undefined)\r\n url_ += \"Company=\" + encodeURIComponent(\"\" + company) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetByDeliveryID(_response);\r\n });\r\n }\r\n\r\n protected processGetByDeliveryID(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = OrderStatus.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class CompletionsClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param companyName (optional) \r\n * @return Success\r\n */\r\n getById(completionId: string, companyName: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/completions/{completionId}?\";\r\n if (completionId === undefined || completionId === null)\r\n throw new Error(\"The parameter 'completionId' must be defined.\");\r\n url_ = url_.replace(\"{completionId}\", encodeURIComponent(\"\" + completionId));\r\n if (companyName === null)\r\n throw new Error(\"The parameter 'companyName' cannot be null.\");\r\n else if (companyName !== undefined)\r\n url_ += \"companyName=\" + encodeURIComponent(\"\" + companyName) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetById(_response);\r\n });\r\n }\r\n\r\n protected processGetById(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Order.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class ElavtalClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param elavtalID (optional) \r\n * @param company (optional) \r\n * @return Success\r\n */\r\n getByGuid(elavtalID: string | undefined, company: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/orders/elavtal?\";\r\n if (elavtalID === null)\r\n throw new Error(\"The parameter 'elavtalID' cannot be null.\");\r\n else if (elavtalID !== undefined)\r\n url_ += \"elavtalID=\" + encodeURIComponent(\"\" + elavtalID) + \"&\";\r\n if (company === null)\r\n throw new Error(\"The parameter 'company' cannot be null.\");\r\n else if (company !== undefined)\r\n url_ += \"Company=\" + encodeURIComponent(\"\" + company) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetByGuid(_response);\r\n });\r\n }\r\n\r\n protected processGetByGuid(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Order.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class PriceClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param consumption (optional) \r\n * @param channel (optional) \r\n * @return Success\r\n */\r\n calculate(consumption: number | undefined, channel: Channel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/prices?\";\r\n if (consumption === null)\r\n throw new Error(\"The parameter 'consumption' cannot be null.\");\r\n else if (consumption !== undefined)\r\n url_ += \"Consumption=\" + encodeURIComponent(\"\" + consumption) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"Channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCalculate(_response);\r\n });\r\n }\r\n\r\n protected processCalculate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = PriceResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param consumption (optional) \r\n * @param channel (optional) \r\n * @return Success\r\n */\r\n average(consumption: number | undefined, channel: Channel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/prices/average?\";\r\n if (consumption === null)\r\n throw new Error(\"The parameter 'consumption' cannot be null.\");\r\n else if (consumption !== undefined)\r\n url_ += \"Consumption=\" + encodeURIComponent(\"\" + consumption) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"Channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAverage(_response);\r\n });\r\n }\r\n\r\n protected processAverage(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = AveragePrices.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param consumption (optional) \r\n * @param channel (optional) \r\n * @return Success\r\n */\r\n list(consumption: number | undefined, channel: Channel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/prices/List?\";\r\n if (consumption === null)\r\n throw new Error(\"The parameter 'consumption' cannot be null.\");\r\n else if (consumption !== undefined)\r\n url_ += \"Consumption=\" + encodeURIComponent(\"\" + consumption) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"Channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processList(_response);\r\n });\r\n }\r\n\r\n protected processList(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SpotPrice.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param consumption (optional) \r\n * @param channel (optional) \r\n * @return Success\r\n */\r\n listLatest(consumption: number | undefined, channel: Channel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/prices/ListLatest?\";\r\n if (consumption === null)\r\n throw new Error(\"The parameter 'consumption' cannot be null.\");\r\n else if (consumption !== undefined)\r\n url_ += \"Consumption=\" + encodeURIComponent(\"\" + consumption) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"Channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processListLatest(_response);\r\n });\r\n }\r\n\r\n protected processListLatest(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SpotPrice.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class RealEstateAgentClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getById(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/RealEstateAgent/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetById(_response);\r\n });\r\n }\r\n\r\n protected processGetById(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RealEstateAgentModel.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param name (optional) \r\n * @param channel (optional) \r\n * @param id (optional) \r\n * @return Success\r\n */\r\n list(name: string | undefined, channel: Channel | undefined, id: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/RealEstateAgent?\";\r\n if (name === null)\r\n throw new Error(\"The parameter 'name' cannot be null.\");\r\n else if (name !== undefined)\r\n url_ += \"Name=\" + encodeURIComponent(\"\" + name) + \"&\";\r\n if (channel === null)\r\n throw new Error(\"The parameter 'channel' cannot be null.\");\r\n else if (channel !== undefined)\r\n url_ += \"Channel=\" + encodeURIComponent(\"\" + channel) + \"&\";\r\n if (id === null)\r\n throw new Error(\"The parameter 'id' cannot be null.\");\r\n else if (id !== undefined)\r\n url_ += \"Id=\" + encodeURIComponent(\"\" + id) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processList(_response);\r\n });\r\n }\r\n\r\n protected processList(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RealEstateAgentModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n create(body: RealEstateAgentModel | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/RealEstateAgent\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreate(_response);\r\n });\r\n }\r\n\r\n protected processCreate(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = RealEstateAgentModel.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class ReportClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n loggedIn(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/loggedin\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processLoggedIn(_response);\r\n });\r\n }\r\n\r\n protected processLoggedIn(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ReportUser.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n sales(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/sales?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSales(_response);\r\n });\r\n }\r\n\r\n protected processSales(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ReportResponse.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n conversions(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/conversions?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processConversions(_response);\r\n });\r\n }\r\n\r\n protected processConversions(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ConversionResponseItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n conversionsCSV(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/conversions-csv?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processConversionsCSV(_response);\r\n });\r\n }\r\n\r\n protected processConversionsCSV(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n executiveReport(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/executive-report?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processExecutiveReport(_response);\r\n });\r\n }\r\n\r\n protected processExecutiveReport(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ExecutiveReportResponseItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n executiveReportCSV(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/executive-report-csv?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processExecutiveReportCSV(_response);\r\n });\r\n }\r\n\r\n protected processExecutiveReportCSV(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n insuranceSalesCSV(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/insurance-sales-csv?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInsuranceSalesCSV(_response);\r\n });\r\n }\r\n\r\n protected processInsuranceSalesCSV(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n insuranceSales(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/insurance-sales?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInsuranceSales(_response);\r\n });\r\n }\r\n\r\n protected processInsuranceSales(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SalesResponseItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n mortgageSalesCSV(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/mortgage-sales-csv?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processMortgageSalesCSV(_response);\r\n });\r\n }\r\n\r\n protected processMortgageSalesCSV(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n mortgageSales(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/mortgage-sales?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processMortgageSales(_response);\r\n });\r\n }\r\n\r\n protected processMortgageSales(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SalesResponseItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n electricitySalesCSV(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/electricity-sales-csv?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processElectricitySalesCSV(_response);\r\n });\r\n }\r\n\r\n protected processElectricitySalesCSV(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n electricitySales(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/electricity-sales?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processElectricitySales(_response);\r\n });\r\n }\r\n\r\n protected processElectricitySales(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(SalesResponseItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param ownerId (optional) \r\n * @return Success\r\n */\r\n chains(ownerId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/chains?\";\r\n if (ownerId === null)\r\n throw new Error(\"The parameter 'ownerId' cannot be null.\");\r\n else if (ownerId !== undefined)\r\n url_ += \"ownerId=\" + encodeURIComponent(\"\" + ownerId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processChains(_response);\r\n });\r\n }\r\n\r\n protected processChains(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RealEstateChainModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n owners(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/owners\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processOwners(_response);\r\n });\r\n }\r\n\r\n protected processOwners(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RealEstateChainOwner.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param chainId (optional) \r\n * @return Success\r\n */\r\n offices(chainId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/offices?\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"chainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processOffices(_response);\r\n });\r\n }\r\n\r\n protected processOffices(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RealEstateOfficeModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param officeId (optional) \r\n * @return Success\r\n */\r\n agents(officeId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/agents?\";\r\n if (officeId === null)\r\n throw new Error(\"The parameter 'officeId' cannot be null.\");\r\n else if (officeId !== undefined)\r\n url_ += \"officeId=\" + encodeURIComponent(\"\" + officeId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAgents(_response);\r\n });\r\n }\r\n\r\n protected processAgents(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RealEstateAgentModel.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n addons(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/addons\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAddons(_response);\r\n });\r\n }\r\n\r\n protected processAddons(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(item);\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n users(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/users\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUsers(_response);\r\n });\r\n }\r\n\r\n protected processUsers(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(ReportUser.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createUser(body: ReportUserUpdate | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/users\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreateUser(_response);\r\n });\r\n }\r\n\r\n protected processCreateUser(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ReportUser.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateUser(id: string, body: ReportUserUpdate | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/users/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateUser(_response);\r\n });\r\n }\r\n\r\n protected processUpdateUser(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ReportUser.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n deleteUser(id: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/users/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDeleteUser(_response);\r\n });\r\n }\r\n\r\n protected processDeleteUser(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n addUserPermission(id: string, body: ReportUserPermissionUpdate | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/users/{id}/permissions\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processAddUserPermission(_response);\r\n });\r\n }\r\n\r\n protected processAddUserPermission(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = ReportUserPermission.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n removeUserPermission(id: string, permissionId: string, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/users/{id}/permissions/{permissionId}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n if (permissionId === undefined || permissionId === null)\r\n throw new Error(\"The parameter 'permissionId' must be defined.\");\r\n url_ = url_.replace(\"{permissionId}\", encodeURIComponent(\"\" + permissionId));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processRemoveUserPermission(_response);\r\n });\r\n }\r\n\r\n protected processRemoveUserPermission(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @param count (optional) \r\n * @return Success\r\n */\r\n topOffices(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, count: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/topoffices?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n if (count === null)\r\n throw new Error(\"The parameter 'count' cannot be null.\");\r\n else if (count !== undefined)\r\n url_ += \"count=\" + encodeURIComponent(\"\" + count) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processTopOffices(_response);\r\n });\r\n }\r\n\r\n protected processTopOffices(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(OfficeItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param numberOfMonths (optional) \r\n * @return Success\r\n */\r\n history(numberOfMonths: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/history?\";\r\n if (numberOfMonths === null)\r\n throw new Error(\"The parameter 'numberOfMonths' cannot be null.\");\r\n else if (numberOfMonths !== undefined)\r\n url_ += \"NumberOfMonths=\" + encodeURIComponent(\"\" + numberOfMonths) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processHistory(_response);\r\n });\r\n }\r\n\r\n protected processHistory(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(HistoryItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @param count (optional) \r\n * @return Success\r\n */\r\n topAgents(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, count: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/topagents?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n if (count === null)\r\n throw new Error(\"The parameter 'count' cannot be null.\");\r\n else if (count !== undefined)\r\n url_ += \"count=\" + encodeURIComponent(\"\" + count) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processTopAgents(_response);\r\n });\r\n }\r\n\r\n protected processTopAgents(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(AgentItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param fromDate (optional) \r\n * @param toDate (optional) \r\n * @param byCreatedDate (optional) \r\n * @param chainId (optional) \r\n * @param showElectricity (optional) \r\n * @param showInsurance (optional) \r\n * @param showMortgage (optional) \r\n * @return Success\r\n */\r\n csvString(fromDate: moment.Moment | undefined, toDate: moment.Moment | undefined, byCreatedDate: boolean | undefined, chainId: string | undefined, showElectricity: boolean | undefined, showInsurance: boolean | undefined, showMortgage: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/report/csvstring?\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"FromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n if (toDate === null)\r\n throw new Error(\"The parameter 'toDate' cannot be null.\");\r\n else if (toDate !== undefined)\r\n url_ += \"ToDate=\" + encodeURIComponent(toDate ? \"\" + toDate.toISOString() : \"\") + \"&\";\r\n if (byCreatedDate === null)\r\n throw new Error(\"The parameter 'byCreatedDate' cannot be null.\");\r\n else if (byCreatedDate !== undefined)\r\n url_ += \"ByCreatedDate=\" + encodeURIComponent(\"\" + byCreatedDate) + \"&\";\r\n if (chainId === null)\r\n throw new Error(\"The parameter 'chainId' cannot be null.\");\r\n else if (chainId !== undefined)\r\n url_ += \"ChainId=\" + encodeURIComponent(\"\" + chainId) + \"&\";\r\n if (showElectricity === null)\r\n throw new Error(\"The parameter 'showElectricity' cannot be null.\");\r\n else if (showElectricity !== undefined)\r\n url_ += \"ShowElectricity=\" + encodeURIComponent(\"\" + showElectricity) + \"&\";\r\n if (showInsurance === null)\r\n throw new Error(\"The parameter 'showInsurance' cannot be null.\");\r\n else if (showInsurance !== undefined)\r\n url_ += \"ShowInsurance=\" + encodeURIComponent(\"\" + showInsurance) + \"&\";\r\n if (showMortgage === null)\r\n throw new Error(\"The parameter 'showMortgage' cannot be null.\");\r\n else if (showMortgage !== undefined)\r\n url_ += \"ShowMortgage=\" + encodeURIComponent(\"\" + showMortgage) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"application/json\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCsvString(_response);\r\n });\r\n }\r\n\r\n protected processCsvString(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class SelfServiceClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param host (optional) \r\n * @return Success\r\n */\r\n customer(host: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/customer?\";\r\n if (host === null)\r\n throw new Error(\"The parameter 'host' cannot be null.\");\r\n else if (host !== undefined)\r\n url_ += \"host=\" + encodeURIComponent(\"\" + host) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCustomer(_response);\r\n });\r\n }\r\n\r\n protected processCustomer(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Customer.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param host (optional) \r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateCustomer(host: string | undefined, body: Customer | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/customer?\";\r\n if (host === null)\r\n throw new Error(\"The parameter 'host' cannot be null.\");\r\n else if (host !== undefined)\r\n url_ += \"host=\" + encodeURIComponent(\"\" + host) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateCustomer(_response);\r\n });\r\n }\r\n\r\n protected processUpdateCustomer(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Customer.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param host (optional) \r\n * @return Success\r\n */\r\n elavtal(host: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/elavtal?\";\r\n if (host === null)\r\n throw new Error(\"The parameter 'host' cannot be null.\");\r\n else if (host !== undefined)\r\n url_ += \"host=\" + encodeURIComponent(\"\" + host) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processElavtal(_response);\r\n });\r\n }\r\n\r\n protected processElavtal(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Elavtal.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param propertyId (optional) \r\n * @param host (optional) \r\n * @param elavtalId (optional) \r\n * @return Success\r\n */\r\n consumption(propertyId: string | undefined, host: string | undefined, elavtalId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/consumption?\";\r\n if (propertyId === null)\r\n throw new Error(\"The parameter 'propertyId' cannot be null.\");\r\n else if (propertyId !== undefined)\r\n url_ += \"propertyId=\" + encodeURIComponent(\"\" + propertyId) + \"&\";\r\n if (host === null)\r\n throw new Error(\"The parameter 'host' cannot be null.\");\r\n else if (host !== undefined)\r\n url_ += \"host=\" + encodeURIComponent(\"\" + host) + \"&\";\r\n if (elavtalId === null)\r\n throw new Error(\"The parameter 'elavtalId' cannot be null.\");\r\n else if (elavtalId !== undefined)\r\n url_ += \"elavtalId=\" + encodeURIComponent(\"\" + elavtalId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processConsumption(_response);\r\n });\r\n }\r\n\r\n protected processConsumption(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Consumption.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param propertyId (optional) \r\n * @param deliveryId (optional) \r\n * @param startTime (optional) \r\n * @param endTime (optional) \r\n * @return Success\r\n */\r\n consumptions(propertyId: string | undefined, deliveryId: string | undefined, startTime: moment.Moment | undefined, endTime: moment.Moment | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/consumptions?\";\r\n if (propertyId === null)\r\n throw new Error(\"The parameter 'propertyId' cannot be null.\");\r\n else if (propertyId !== undefined)\r\n url_ += \"propertyId=\" + encodeURIComponent(\"\" + propertyId) + \"&\";\r\n if (deliveryId === null)\r\n throw new Error(\"The parameter 'deliveryId' cannot be null.\");\r\n else if (deliveryId !== undefined)\r\n url_ += \"deliveryId=\" + encodeURIComponent(\"\" + deliveryId) + \"&\";\r\n if (startTime === null)\r\n throw new Error(\"The parameter 'startTime' cannot be null.\");\r\n else if (startTime !== undefined)\r\n url_ += \"startTime=\" + encodeURIComponent(startTime ? \"\" + startTime.toISOString() : \"\") + \"&\";\r\n if (endTime === null)\r\n throw new Error(\"The parameter 'endTime' cannot be null.\");\r\n else if (endTime !== undefined)\r\n url_ += \"endTime=\" + encodeURIComponent(endTime ? \"\" + endTime.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processConsumptions(_response);\r\n });\r\n }\r\n\r\n protected processConsumptions(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Consumption.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param elavtalId (optional) \r\n * @param consumption (optional) \r\n * @return Success\r\n */\r\n fixedPrice(elavtalId: string | undefined, consumption: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/fixedPrice?\";\r\n if (elavtalId === null)\r\n throw new Error(\"The parameter 'elavtalId' cannot be null.\");\r\n else if (elavtalId !== undefined)\r\n url_ += \"elavtalId=\" + encodeURIComponent(\"\" + elavtalId) + \"&\";\r\n if (consumption === null)\r\n throw new Error(\"The parameter 'consumption' cannot be null.\");\r\n else if (consumption !== undefined)\r\n url_ += \"consumption=\" + encodeURIComponent(\"\" + consumption) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processFixedPrice(_response);\r\n });\r\n }\r\n\r\n protected processFixedPrice(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = FixedPrice.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param deliveryId (optional) \r\n * @return Success\r\n */\r\n contracts(deliveryId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/contracts?\";\r\n if (deliveryId === null)\r\n throw new Error(\"The parameter 'deliveryId' cannot be null.\");\r\n else if (deliveryId !== undefined)\r\n url_ += \"deliveryId=\" + encodeURIComponent(\"\" + deliveryId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processContracts(_response);\r\n });\r\n }\r\n\r\n protected processContracts(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Contract.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param deliveryId (optional) \r\n * @return Success\r\n */\r\n estimatedVariablePrice(deliveryId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/estimated-variable-price?\";\r\n if (deliveryId === null)\r\n throw new Error(\"The parameter 'deliveryId' cannot be null.\");\r\n else if (deliveryId !== undefined)\r\n url_ += \"deliveryId=\" + encodeURIComponent(\"\" + deliveryId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processEstimatedVariablePrice(_response);\r\n });\r\n }\r\n\r\n protected processEstimatedVariablePrice(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = VariablePrice.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param electricityArea (optional) \r\n * @param startDate (optional) \r\n * @param endDate (optional) \r\n * @param monthly (optional) \r\n * @return Success\r\n */\r\n variablePrices(electricityArea: number | undefined, startDate: moment.Moment | undefined, endDate: moment.Moment | undefined, monthly: boolean | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/variable-prices?\";\r\n if (electricityArea === null)\r\n throw new Error(\"The parameter 'electricityArea' cannot be null.\");\r\n else if (electricityArea !== undefined)\r\n url_ += \"electricityArea=\" + encodeURIComponent(\"\" + electricityArea) + \"&\";\r\n if (startDate === null)\r\n throw new Error(\"The parameter 'startDate' cannot be null.\");\r\n else if (startDate !== undefined)\r\n url_ += \"startDate=\" + encodeURIComponent(startDate ? \"\" + startDate.toISOString() : \"\") + \"&\";\r\n if (endDate === null)\r\n throw new Error(\"The parameter 'endDate' cannot be null.\");\r\n else if (endDate !== undefined)\r\n url_ += \"endDate=\" + encodeURIComponent(endDate ? \"\" + endDate.toISOString() : \"\") + \"&\";\r\n if (monthly === null)\r\n throw new Error(\"The parameter 'monthly' cannot be null.\");\r\n else if (monthly !== undefined)\r\n url_ += \"monthly=\" + encodeURIComponent(\"\" + monthly) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processVariablePrices(_response);\r\n });\r\n }\r\n\r\n protected processVariablePrices(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(VariablePrice.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param deliveryId (optional) \r\n * @param fromDate (optional) \r\n * @return Success\r\n */\r\n estimateMonth(deliveryId: string | undefined, fromDate: moment.Moment | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/estimated-month?\";\r\n if (deliveryId === null)\r\n throw new Error(\"The parameter 'deliveryId' cannot be null.\");\r\n else if (deliveryId !== undefined)\r\n url_ += \"deliveryId=\" + encodeURIComponent(\"\" + deliveryId) + \"&\";\r\n if (fromDate === null)\r\n throw new Error(\"The parameter 'fromDate' cannot be null.\");\r\n else if (fromDate !== undefined)\r\n url_ += \"fromDate=\" + encodeURIComponent(fromDate ? \"\" + fromDate.toISOString() : \"\") + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processEstimateMonth(_response);\r\n });\r\n }\r\n\r\n protected processEstimateMonth(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = EstimatedMonth.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n estimationItems(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/estimation-items\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processEstimationItems(_response);\r\n });\r\n }\r\n\r\n protected processEstimationItems(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(EstimationItem.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param page (optional) \r\n * @return Success\r\n */\r\n invoices(page: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/invoices?\";\r\n if (page === null)\r\n throw new Error(\"The parameter 'page' cannot be null.\");\r\n else if (page !== undefined)\r\n url_ += \"page=\" + encodeURIComponent(\"\" + page) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInvoices(_response);\r\n });\r\n }\r\n\r\n protected processInvoices(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Billogram.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param page (optional) \r\n * @return Success\r\n */\r\n invoicesV2(page: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/invoices-v2?\";\r\n if (page === null)\r\n throw new Error(\"The parameter 'page' cannot be null.\");\r\n else if (page !== undefined)\r\n url_ += \"page=\" + encodeURIComponent(\"\" + page) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processInvoicesV2(_response);\r\n });\r\n }\r\n\r\n protected processInvoicesV2(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(Invoice.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n registerForNotifications(body: Device | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/notifications\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processRegisterForNotifications(_response);\r\n });\r\n }\r\n\r\n protected processRegisterForNotifications(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n sendNotification(body: NotificationRequest | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/notifications\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processSendNotification(_response);\r\n });\r\n }\r\n\r\n protected processSendNotification(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param installationId (optional) \r\n * @return Success\r\n */\r\n deleteRegistration(installationId: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/notifications?\";\r\n if (installationId === null)\r\n throw new Error(\"The parameter 'installationId' cannot be null.\");\r\n else if (installationId !== undefined)\r\n url_ += \"installationId=\" + encodeURIComponent(\"\" + installationId) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"DELETE\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processDeleteRegistration(_response);\r\n });\r\n }\r\n\r\n protected processDeleteRegistration(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n getInstallations(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/self-service/notifications\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetInstallations(_response);\r\n });\r\n }\r\n\r\n protected processGetInstallations(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n if (Array.isArray(resultData200)) {\r\n result200 = [] as any;\r\n for (let item of resultData200)\r\n result200!.push(RegistrationDescription.fromJS(item));\r\n }\r\n else {\r\n result200 = null;\r\n }\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class SoderbergPartnersClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param consumption (optional) \r\n * @return Success\r\n */\r\n estimatedSavings(id: string, consumption: number | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/soderberg-partners/{id}/estimated-savings?\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n if (consumption === null)\r\n throw new Error(\"The parameter 'consumption' cannot be null.\");\r\n else if (consumption !== undefined)\r\n url_ += \"consumption=\" + encodeURIComponent(\"\" + consumption) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processEstimatedSavings(_response);\r\n });\r\n }\r\n\r\n protected processEstimatedSavings(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = Savings.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @return Success\r\n */\r\n updateConsumptions(signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/soderberg-partners/update-consumptions\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateConsumptions(_response);\r\n });\r\n }\r\n\r\n protected processUpdateConsumptions(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n updateAndSend(id: string, body: Order | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/soderberg-partners/{id}/update-and-send\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateAndSend(_response);\r\n });\r\n }\r\n\r\n protected processUpdateAndSend(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param body (optional) \r\n * @return Success\r\n */\r\n createAndSend(body: Order | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/soderberg-partners/create-and-send\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(body);\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"POST\",\r\n signal,\r\n headers: {\r\n \"Content-Type\": \"application/json-patch+json\",\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCreateAndSend(_response);\r\n });\r\n }\r\n\r\n protected processCreateAndSend(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class VitecClient extends ClientBase {\r\n private http: { fetch(url: RequestInfo, init?: RequestInit): Promise };\r\n private baseUrl: string;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string, http?: { fetch(url: RequestInfo, init?: RequestInit): Promise }) {\r\n super();\r\n this.http = http ? http : window as any;\r\n this.baseUrl = this.getBaseUrl(\"\", baseUrl);\r\n }\r\n\r\n /**\r\n * @param addOns (optional) \r\n * @param contractMethod (optional) \r\n * @param files (optional) \r\n * @param vitecFileIds (optional) \r\n * @param comment (optional) \r\n * @return Success\r\n */\r\n completeOrder(id: string, addOns: AddOn[] | undefined, contractMethod: RealEstateOrderContractMethod | undefined, files: FileParameter[] | undefined, vitecFileIds: string[] | undefined, comment: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/vitec/order/{id}\";\r\n if (id === undefined || id === null)\r\n throw new Error(\"The parameter 'id' must be defined.\");\r\n url_ = url_.replace(\"{id}\", encodeURIComponent(\"\" + id));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = new FormData();\r\n if (addOns === null || addOns === undefined)\r\n throw new Error(\"The parameter 'addOns' cannot be null.\");\r\n else\r\n addOns.forEach(item_ => content_.append(\"AddOns\", item_.toString()));\r\n if (contractMethod === null || contractMethod === undefined)\r\n throw new Error(\"The parameter 'contractMethod' cannot be null.\");\r\n else\r\n content_.append(\"ContractMethod\", contractMethod.toString());\r\n if (files === null || files === undefined)\r\n throw new Error(\"The parameter 'files' cannot be null.\");\r\n else\r\n files.forEach(item_ => content_.append(\"Files\", item_.data, item_.fileName ? item_.fileName : \"Files\") );\r\n if (vitecFileIds === null || vitecFileIds === undefined)\r\n throw new Error(\"The parameter 'vitecFileIds' cannot be null.\");\r\n else\r\n vitecFileIds.forEach(item_ => content_.append(\"VitecFileIds\", item_.toString()));\r\n if (comment === null || comment === undefined)\r\n throw new Error(\"The parameter 'comment' cannot be null.\");\r\n else\r\n content_.append(\"Comment\", comment.toString());\r\n\r\n let options_: RequestInit = {\r\n body: content_,\r\n method: \"PUT\",\r\n signal,\r\n headers: {\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processCompleteOrder(_response);\r\n });\r\n }\r\n\r\n protected processCompleteOrder(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n return;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param customerId (optional) \r\n * @param token (optional) \r\n * @return Success\r\n */\r\n getOrder(customerId: string | undefined, token: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/vitec/order?\";\r\n if (customerId === null)\r\n throw new Error(\"The parameter 'customerId' cannot be null.\");\r\n else if (customerId !== undefined)\r\n url_ += \"customerId=\" + encodeURIComponent(\"\" + customerId) + \"&\";\r\n if (token === null)\r\n throw new Error(\"The parameter 'token' cannot be null.\");\r\n else if (token !== undefined)\r\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processGetOrder(_response);\r\n });\r\n }\r\n\r\n protected processGetOrder(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = VitecOrder.fromJS(resultData200);\r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param customerId (optional) \r\n * @param token (optional) \r\n * @return Success\r\n */\r\n updateOrderNotInterested(customerId: string | undefined, token: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/vitec/order-not-interested?\";\r\n if (customerId === null)\r\n throw new Error(\"The parameter 'customerId' cannot be null.\");\r\n else if (customerId !== undefined)\r\n url_ += \"customerId=\" + encodeURIComponent(\"\" + customerId) + \"&\";\r\n if (token === null)\r\n throw new Error(\"The parameter 'token' cannot be null.\");\r\n else if (token !== undefined)\r\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateOrderNotInterested(_response);\r\n });\r\n }\r\n\r\n protected processUpdateOrderNotInterested(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n\r\n /**\r\n * @param customerId (optional) \r\n * @param token (optional) \r\n * @return Success\r\n */\r\n updateOrderNotAsked(customerId: string | undefined, token: string | undefined, signal?: AbortSignal | undefined): Promise {\r\n let url_ = this.baseUrl + \"/vitec/order-not-asked?\";\r\n if (customerId === null)\r\n throw new Error(\"The parameter 'customerId' cannot be null.\");\r\n else if (customerId !== undefined)\r\n url_ += \"customerId=\" + encodeURIComponent(\"\" + customerId) + \"&\";\r\n if (token === null)\r\n throw new Error(\"The parameter 'token' cannot be null.\");\r\n else if (token !== undefined)\r\n url_ += \"token=\" + encodeURIComponent(\"\" + token) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n let options_: RequestInit = {\r\n method: \"GET\",\r\n signal,\r\n headers: {\r\n \"Accept\": \"text/plain\"\r\n }\r\n };\r\n\r\n return this.transformOptions(options_).then(transformedOptions_ => {\r\n return this.http.fetch(url_, transformedOptions_);\r\n }).then((_response: Response) => {\r\n return this.processUpdateOrderNotAsked(_response);\r\n });\r\n }\r\n\r\n protected processUpdateOrderNotAsked(response: Response): Promise {\r\n const status = response.status;\r\n let _headers: any = {}; if (response.headers && response.headers.forEach) { response.headers.forEach((v: any, k: any) => _headers[k] = v); };\r\n if (status === 200) {\r\n return response.text().then((_responseText) => {\r\n let result200: any = null;\r\n let resultData200 = _responseText === \"\" ? null : JSON.parse(_responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n \r\n return result200;\r\n });\r\n } else if (status !== 200 && status !== 204) {\r\n return response.text().then((_responseText) => {\r\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\r\n });\r\n }\r\n return Promise.resolve(null as any);\r\n }\r\n}\r\n\r\nexport class Address implements IAddress {\r\n pid?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n\r\n constructor(data?: IAddress) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pid = _data[\"pid\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.street = _data[\"street\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Address {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Address();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pid\"] = this.pid;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"street\"] = this.street;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAddress {\r\n pid?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n}\r\n\r\nexport enum Channel {\r\n WEB = \"WEB\",\r\n FRIBERGASKOLAN = \"FRIBERGASKOLAN\",\r\n ERIK_OLSSON = \"ERIK_OLSSON\",\r\n SAF = \"SAF\",\r\n STIGTOMTA_IF = \"STIGTOMTA_IF\",\r\n NSK = \"NSK\",\r\n SWADD = \"SWADD\",\r\n BRFMATTBANDET = \"BRFMATTBANDET\",\r\n NYKVARNEL = \"NYKVARNEL\",\r\n SKANDIA_MAKLARNA = \"SKANDIA_MAKLARNA\",\r\n SKANDIA_MAKLARNA_PARTNER = \"SKANDIA_MAKLARNA_PARTNER\",\r\n ERIK_OLSSON_PARTNER = \"ERIK_OLSSON_PARTNER\",\r\n SODERBERG_PARTNERS = \"SODERBERG_PARTNERS\",\r\n AVY = \"AVY\",\r\n ERIK_OLSSON_LEAD = \"ERIK_OLSSON_LEAD\",\r\n ERA = \"ERA\",\r\n ERA_PARTNER = \"ERA_PARTNER\",\r\n MOHV = \"MOHV\",\r\n MOHV_PARTNER = \"MOHV_PARTNER\",\r\n NOTAR = \"NOTAR\",\r\n NOTAR_PARTNER = \"NOTAR_PARTNER\",\r\n MAKLARRINGEN = \"MAKLARRINGEN\",\r\n MAKLARRINGEN_PARTNER = \"MAKLARRINGEN_PARTNER\",\r\n ESNY = \"ESNY\",\r\n ESNY_PARTNER = \"ESNY_PARTNER\",\r\n SVENSKA_MAKLARHUSET = \"SVENSKA_MAKLARHUSET\",\r\n SVENSKA_MAKLARHUSET_PARTNER = \"SVENSKA_MAKLARHUSET_PARTNER\",\r\n SODERBERG_PARTNERS_PARTNER = \"SODERBERG_PARTNERS_PARTNER\",\r\n WIDERLOV = \"WIDERLOV\",\r\n WIDERLOV_PARTNER = \"WIDERLOV_PARTNER\",\r\n SODERBERG_PARTNERS_SALARY = \"SODERBERG_PARTNERS_SALARY\",\r\n SODERBERG_PARTNERS_TM = \"SODERBERG_PARTNERS_TM\",\r\n SODERBERG_PARTNERS_MORTGAGE = \"SODERBERG_PARTNERS_MORTGAGE\",\r\n BJURFORS = \"BJURFORS\",\r\n BJURFORS_PARTNER = \"BJURFORS_PARTNER\",\r\n GUTEEL = \"GUTEEL\",\r\n}\r\n\r\nexport class RealEstateChainOwner implements IRealEstateChainOwner {\r\n id?: string;\r\n name?: string | undefined;\r\n chains?: RealEstateChainModel[] | undefined;\r\n\r\n constructor(data?: IRealEstateChainOwner) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n if (Array.isArray(_data[\"chains\"])) {\r\n this.chains = [] as any;\r\n for (let item of _data[\"chains\"])\r\n this.chains!.push(RealEstateChainModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateChainOwner {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateChainOwner();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n if (Array.isArray(this.chains)) {\r\n data[\"chains\"] = [];\r\n for (let item of this.chains)\r\n data[\"chains\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateChainOwner {\r\n id?: string;\r\n name?: string | undefined;\r\n chains?: RealEstateChainModel[] | undefined;\r\n}\r\n\r\nexport class RealEstateChainModel implements IRealEstateChainModel {\r\n id?: string;\r\n name?: string | undefined;\r\n channel?: Channel;\r\n realEstateChainOwnerId?: string;\r\n owner?: RealEstateChainOwner;\r\n offices?: RealEstateOfficeModel[] | undefined;\r\n vitecCustomerId?: string | undefined;\r\n apiKey?: string | undefined;\r\n vitecFilesAccess?: boolean;\r\n mspecsSubscriberId?: string | undefined;\r\n contractEmail?: string | undefined;\r\n syncObjects?: boolean;\r\n signupLink?: string | undefined;\r\n\r\n constructor(data?: IRealEstateChainModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.channel = _data[\"channel\"];\r\n this.realEstateChainOwnerId = _data[\"realEstateChainOwnerId\"];\r\n this.owner = _data[\"owner\"] ? RealEstateChainOwner.fromJS(_data[\"owner\"]) : undefined;\r\n if (Array.isArray(_data[\"offices\"])) {\r\n this.offices = [] as any;\r\n for (let item of _data[\"offices\"])\r\n this.offices!.push(RealEstateOfficeModel.fromJS(item));\r\n }\r\n this.vitecCustomerId = _data[\"vitecCustomerId\"];\r\n this.apiKey = _data[\"apiKey\"];\r\n this.vitecFilesAccess = _data[\"vitecFilesAccess\"];\r\n this.mspecsSubscriberId = _data[\"mspecsSubscriberId\"];\r\n this.contractEmail = _data[\"contractEmail\"];\r\n this.syncObjects = _data[\"syncObjects\"];\r\n this.signupLink = _data[\"signupLink\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateChainModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateChainModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"channel\"] = this.channel;\r\n data[\"realEstateChainOwnerId\"] = this.realEstateChainOwnerId;\r\n data[\"owner\"] = this.owner ? this.owner.toJSON() : undefined;\r\n if (Array.isArray(this.offices)) {\r\n data[\"offices\"] = [];\r\n for (let item of this.offices)\r\n data[\"offices\"].push(item.toJSON());\r\n }\r\n data[\"vitecCustomerId\"] = this.vitecCustomerId;\r\n data[\"apiKey\"] = this.apiKey;\r\n data[\"vitecFilesAccess\"] = this.vitecFilesAccess;\r\n data[\"mspecsSubscriberId\"] = this.mspecsSubscriberId;\r\n data[\"contractEmail\"] = this.contractEmail;\r\n data[\"syncObjects\"] = this.syncObjects;\r\n data[\"signupLink\"] = this.signupLink;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateChainModel {\r\n id?: string;\r\n name?: string | undefined;\r\n channel?: Channel;\r\n realEstateChainOwnerId?: string;\r\n owner?: RealEstateChainOwner;\r\n offices?: RealEstateOfficeModel[] | undefined;\r\n vitecCustomerId?: string | undefined;\r\n apiKey?: string | undefined;\r\n vitecFilesAccess?: boolean;\r\n mspecsSubscriberId?: string | undefined;\r\n contractEmail?: string | undefined;\r\n syncObjects?: boolean;\r\n signupLink?: string | undefined;\r\n}\r\n\r\nexport class RealEstateOfficeModel implements IRealEstateOfficeModel {\r\n id?: string;\r\n location?: string | undefined;\r\n street?: string | undefined;\r\n city?: string | undefined;\r\n externalId?: string | undefined;\r\n realEstateChainId?: string;\r\n chain?: RealEstateChainModel;\r\n agents?: RealEstateAgentModel[] | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n group?: string | undefined;\r\n vitecCustomerId?: string | undefined;\r\n mspecsId?: string | undefined;\r\n\r\n constructor(data?: IRealEstateOfficeModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.location = _data[\"location\"];\r\n this.street = _data[\"street\"];\r\n this.city = _data[\"city\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.realEstateChainId = _data[\"realEstateChainId\"];\r\n this.chain = _data[\"chain\"] ? RealEstateChainModel.fromJS(_data[\"chain\"]) : undefined;\r\n if (Array.isArray(_data[\"agents\"])) {\r\n this.agents = [] as any;\r\n for (let item of _data[\"agents\"])\r\n this.agents!.push(RealEstateAgentModel.fromJS(item));\r\n }\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.group = _data[\"group\"];\r\n this.vitecCustomerId = _data[\"vitecCustomerId\"];\r\n this.mspecsId = _data[\"mspecsId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateOfficeModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateOfficeModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"location\"] = this.location;\r\n data[\"street\"] = this.street;\r\n data[\"city\"] = this.city;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"realEstateChainId\"] = this.realEstateChainId;\r\n data[\"chain\"] = this.chain ? this.chain.toJSON() : undefined;\r\n if (Array.isArray(this.agents)) {\r\n data[\"agents\"] = [];\r\n for (let item of this.agents)\r\n data[\"agents\"].push(item.toJSON());\r\n }\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"group\"] = this.group;\r\n data[\"vitecCustomerId\"] = this.vitecCustomerId;\r\n data[\"mspecsId\"] = this.mspecsId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateOfficeModel {\r\n id?: string;\r\n location?: string | undefined;\r\n street?: string | undefined;\r\n city?: string | undefined;\r\n externalId?: string | undefined;\r\n realEstateChainId?: string;\r\n chain?: RealEstateChainModel;\r\n agents?: RealEstateAgentModel[] | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n group?: string | undefined;\r\n vitecCustomerId?: string | undefined;\r\n mspecsId?: string | undefined;\r\n}\r\n\r\nexport class RealEstateAgentModel implements IRealEstateAgentModel {\r\n id?: string;\r\n name?: string | undefined;\r\n email?: string | undefined;\r\n phone?: string | undefined;\r\n realEstateCompany?: string | undefined;\r\n channel?: Channel;\r\n bannerId?: string | undefined;\r\n externalId?: string | undefined;\r\n officeId?: string | undefined;\r\n office?: RealEstateOfficeModel;\r\n offices?: RealEstateOfficeModel[] | undefined;\r\n chainId?: string | undefined;\r\n chain?: RealEstateChainModel;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n mspecsId?: string | undefined;\r\n\r\n constructor(data?: IRealEstateAgentModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.email = _data[\"email\"];\r\n this.phone = _data[\"phone\"];\r\n this.realEstateCompany = _data[\"realEstateCompany\"];\r\n this.channel = _data[\"channel\"];\r\n this.bannerId = _data[\"bannerId\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.officeId = _data[\"officeId\"];\r\n this.office = _data[\"office\"] ? RealEstateOfficeModel.fromJS(_data[\"office\"]) : undefined;\r\n if (Array.isArray(_data[\"offices\"])) {\r\n this.offices = [] as any;\r\n for (let item of _data[\"offices\"])\r\n this.offices!.push(RealEstateOfficeModel.fromJS(item));\r\n }\r\n this.chainId = _data[\"chainId\"];\r\n this.chain = _data[\"chain\"] ? RealEstateChainModel.fromJS(_data[\"chain\"]) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.mspecsId = _data[\"mspecsId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateAgentModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateAgentModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"email\"] = this.email;\r\n data[\"phone\"] = this.phone;\r\n data[\"realEstateCompany\"] = this.realEstateCompany;\r\n data[\"channel\"] = this.channel;\r\n data[\"bannerId\"] = this.bannerId;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"officeId\"] = this.officeId;\r\n data[\"office\"] = this.office ? this.office.toJSON() : undefined;\r\n if (Array.isArray(this.offices)) {\r\n data[\"offices\"] = [];\r\n for (let item of this.offices)\r\n data[\"offices\"].push(item.toJSON());\r\n }\r\n data[\"chainId\"] = this.chainId;\r\n data[\"chain\"] = this.chain ? this.chain.toJSON() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"mspecsId\"] = this.mspecsId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateAgentModel {\r\n id?: string;\r\n name?: string | undefined;\r\n email?: string | undefined;\r\n phone?: string | undefined;\r\n realEstateCompany?: string | undefined;\r\n channel?: Channel;\r\n bannerId?: string | undefined;\r\n externalId?: string | undefined;\r\n officeId?: string | undefined;\r\n office?: RealEstateOfficeModel;\r\n offices?: RealEstateOfficeModel[] | undefined;\r\n chainId?: string | undefined;\r\n chain?: RealEstateChainModel;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n mspecsId?: string | undefined;\r\n}\r\n\r\nexport class RealEstateObjectFileDbModel implements IRealEstateObjectFileDbModel {\r\n id?: string;\r\n externalId?: string | undefined;\r\n name?: string | undefined;\r\n extension?: string | undefined;\r\n modifiedOn?: moment.Moment;\r\n realEstateObjectId?: string;\r\n realEstateObject?: RealEstateObjectDbModel;\r\n\r\n constructor(data?: IRealEstateObjectFileDbModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.name = _data[\"name\"];\r\n this.extension = _data[\"extension\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.realEstateObjectId = _data[\"realEstateObjectId\"];\r\n this.realEstateObject = _data[\"realEstateObject\"] ? RealEstateObjectDbModel.fromJS(_data[\"realEstateObject\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateObjectFileDbModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateObjectFileDbModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"name\"] = this.name;\r\n data[\"extension\"] = this.extension;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"realEstateObjectId\"] = this.realEstateObjectId;\r\n data[\"realEstateObject\"] = this.realEstateObject ? this.realEstateObject.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateObjectFileDbModel {\r\n id?: string;\r\n externalId?: string | undefined;\r\n name?: string | undefined;\r\n extension?: string | undefined;\r\n modifiedOn?: moment.Moment;\r\n realEstateObjectId?: string;\r\n realEstateObject?: RealEstateObjectDbModel;\r\n}\r\n\r\nexport enum RealEstateObjectStatus {\r\n NEW = \"NEW\",\r\n HANDLED = \"HANDLED\",\r\n ORDER_CREATED = \"ORDER_CREATED\",\r\n}\r\n\r\nexport enum Housing {\r\n LAGENHET = \"LAGENHET\",\r\n RADHUS = \"RADHUS\",\r\n VILLA = \"VILLA\",\r\n FRITIDSHUS = \"FRITIDSHUS\",\r\n}\r\n\r\nexport class RealEstateObjectDbModel implements IRealEstateObjectDbModel {\r\n id?: string;\r\n externalId?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment | undefined;\r\n agent?: RealEstateAgentModel;\r\n office?: RealEstateOfficeModel;\r\n chainId?: string;\r\n chain?: RealEstateChainModel;\r\n files?: RealEstateObjectFileDbModel[] | undefined;\r\n vitecObjectId?: string | undefined;\r\n vitecObjectNumber?: string | undefined;\r\n status?: string | undefined;\r\n statusText?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n internalStatus?: RealEstateObjectStatus;\r\n housing?: Housing;\r\n readonly auditEntityId?: string | undefined;\r\n\r\n constructor(data?: IRealEstateObjectDbModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.street = _data[\"street\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.salesDate = _data[\"salesDate\"] ? moment(_data[\"salesDate\"].toString()) : undefined;\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.agent = _data[\"agent\"] ? RealEstateAgentModel.fromJS(_data[\"agent\"]) : undefined;\r\n this.office = _data[\"office\"] ? RealEstateOfficeModel.fromJS(_data[\"office\"]) : undefined;\r\n this.chainId = _data[\"chainId\"];\r\n this.chain = _data[\"chain\"] ? RealEstateChainModel.fromJS(_data[\"chain\"]) : undefined;\r\n if (Array.isArray(_data[\"files\"])) {\r\n this.files = [] as any;\r\n for (let item of _data[\"files\"])\r\n this.files!.push(RealEstateObjectFileDbModel.fromJS(item));\r\n }\r\n this.vitecObjectId = _data[\"vitecObjectId\"];\r\n this.vitecObjectNumber = _data[\"vitecObjectNumber\"];\r\n this.status = _data[\"status\"];\r\n this.statusText = _data[\"statusText\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.internalStatus = _data[\"internalStatus\"];\r\n this.housing = _data[\"housing\"];\r\n (this).auditEntityId = _data[\"auditEntityId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateObjectDbModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateObjectDbModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"street\"] = this.street;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"salesDate\"] = this.salesDate ? this.salesDate.toISOString() : undefined;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"agent\"] = this.agent ? this.agent.toJSON() : undefined;\r\n data[\"office\"] = this.office ? this.office.toJSON() : undefined;\r\n data[\"chainId\"] = this.chainId;\r\n data[\"chain\"] = this.chain ? this.chain.toJSON() : undefined;\r\n if (Array.isArray(this.files)) {\r\n data[\"files\"] = [];\r\n for (let item of this.files)\r\n data[\"files\"].push(item.toJSON());\r\n }\r\n data[\"vitecObjectId\"] = this.vitecObjectId;\r\n data[\"vitecObjectNumber\"] = this.vitecObjectNumber;\r\n data[\"status\"] = this.status;\r\n data[\"statusText\"] = this.statusText;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"internalStatus\"] = this.internalStatus;\r\n data[\"housing\"] = this.housing;\r\n data[\"auditEntityId\"] = this.auditEntityId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateObjectDbModel {\r\n id?: string;\r\n externalId?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment | undefined;\r\n agent?: RealEstateAgentModel;\r\n office?: RealEstateOfficeModel;\r\n chainId?: string;\r\n chain?: RealEstateChainModel;\r\n files?: RealEstateObjectFileDbModel[] | undefined;\r\n vitecObjectId?: string | undefined;\r\n vitecObjectNumber?: string | undefined;\r\n status?: string | undefined;\r\n statusText?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n internalStatus?: RealEstateObjectStatus;\r\n housing?: Housing;\r\n auditEntityId?: string | undefined;\r\n}\r\n\r\nexport enum InvoiceDataStatus {\r\n NEW = \"NEW\",\r\n BILLED = \"BILLED\",\r\n SENT = \"SENT\",\r\n}\r\n\r\nexport class CompanySettingsBillogramModel implements ICompanySettingsBillogramModel {\r\n enabled?: boolean;\r\n username?: string | undefined;\r\n password?: string | undefined;\r\n bankGiro?: string | undefined;\r\n emailOverride?: string | undefined;\r\n defaultBannerId?: string | undefined;\r\n itemTitleConsuming?: string | undefined;\r\n itemTitleProducing?: string | undefined;\r\n useElectricityCollection?: boolean;\r\n\r\n constructor(data?: ICompanySettingsBillogramModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.enabled = _data[\"enabled\"];\r\n this.username = _data[\"username\"];\r\n this.password = _data[\"password\"];\r\n this.bankGiro = _data[\"bankGiro\"];\r\n this.emailOverride = _data[\"emailOverride\"];\r\n this.defaultBannerId = _data[\"defaultBannerId\"];\r\n this.itemTitleConsuming = _data[\"itemTitleConsuming\"];\r\n this.itemTitleProducing = _data[\"itemTitleProducing\"];\r\n this.useElectricityCollection = _data[\"useElectricityCollection\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanySettingsBillogramModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanySettingsBillogramModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"enabled\"] = this.enabled;\r\n data[\"username\"] = this.username;\r\n data[\"password\"] = this.password;\r\n data[\"bankGiro\"] = this.bankGiro;\r\n data[\"emailOverride\"] = this.emailOverride;\r\n data[\"defaultBannerId\"] = this.defaultBannerId;\r\n data[\"itemTitleConsuming\"] = this.itemTitleConsuming;\r\n data[\"itemTitleProducing\"] = this.itemTitleProducing;\r\n data[\"useElectricityCollection\"] = this.useElectricityCollection;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanySettingsBillogramModel {\r\n enabled?: boolean;\r\n username?: string | undefined;\r\n password?: string | undefined;\r\n bankGiro?: string | undefined;\r\n emailOverride?: string | undefined;\r\n defaultBannerId?: string | undefined;\r\n itemTitleConsuming?: string | undefined;\r\n itemTitleProducing?: string | undefined;\r\n useElectricityCollection?: boolean;\r\n}\r\n\r\nexport class CompanySettingsCommunicationModel implements ICompanySettingsCommunicationModel {\r\n emailOverride?: string | undefined;\r\n sendGridApiKey?: string | undefined;\r\n authenticatedDomains?: string[] | undefined;\r\n smsOverride?: string | undefined;\r\n\r\n constructor(data?: ICompanySettingsCommunicationModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.emailOverride = _data[\"emailOverride\"];\r\n this.sendGridApiKey = _data[\"sendGridApiKey\"];\r\n if (Array.isArray(_data[\"authenticatedDomains\"])) {\r\n this.authenticatedDomains = [] as any;\r\n for (let item of _data[\"authenticatedDomains\"])\r\n this.authenticatedDomains!.push(item);\r\n }\r\n this.smsOverride = _data[\"smsOverride\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanySettingsCommunicationModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanySettingsCommunicationModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"emailOverride\"] = this.emailOverride;\r\n data[\"sendGridApiKey\"] = this.sendGridApiKey;\r\n if (Array.isArray(this.authenticatedDomains)) {\r\n data[\"authenticatedDomains\"] = [];\r\n for (let item of this.authenticatedDomains)\r\n data[\"authenticatedDomains\"].push(item);\r\n }\r\n data[\"smsOverride\"] = this.smsOverride;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanySettingsCommunicationModel {\r\n emailOverride?: string | undefined;\r\n sendGridApiKey?: string | undefined;\r\n authenticatedDomains?: string[] | undefined;\r\n smsOverride?: string | undefined;\r\n}\r\n\r\nexport enum InvoiceDeliveryMethod {\r\n MAIL = \"MAIL\",\r\n SMS = \"SMS\",\r\n EINVOICE = \"EINVOICE\",\r\n LETTER = \"LETTER\",\r\n DYNAMICDISTRIBUTION = \"DYNAMICDISTRIBUTION\",\r\n DO_NOT_NOTIFY = \"DO_NOT_NOTIFY\",\r\n EDI = \"EDI\",\r\n}\r\n\r\nexport class CompanySettingsInvoicing implements ICompanySettingsInvoicing {\r\n invoiceOverdueNotificationDelay?: number | undefined;\r\n defaultInvoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n\r\n constructor(data?: ICompanySettingsInvoicing) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.invoiceOverdueNotificationDelay = _data[\"invoiceOverdueNotificationDelay\"];\r\n this.defaultInvoiceDeliveryMethod = _data[\"defaultInvoiceDeliveryMethod\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanySettingsInvoicing {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanySettingsInvoicing();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"invoiceOverdueNotificationDelay\"] = this.invoiceOverdueNotificationDelay;\r\n data[\"defaultInvoiceDeliveryMethod\"] = this.defaultInvoiceDeliveryMethod;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanySettingsInvoicing {\r\n invoiceOverdueNotificationDelay?: number | undefined;\r\n defaultInvoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n}\r\n\r\nexport enum PropertyType {\r\n CONSUMING = \"CONSUMING\",\r\n PRODUCING = \"PRODUCING\",\r\n}\r\n\r\nexport class CompanySettingsInvoiceAttachmentFooterRowModel implements ICompanySettingsInvoiceAttachmentFooterRowModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n title?: string | undefined;\r\n text?: string | undefined;\r\n sortIndex?: number;\r\n propertyType?: PropertyType;\r\n companySettingsInvoiceAttachmentId?: string;\r\n\r\n constructor(data?: ICompanySettingsInvoiceAttachmentFooterRowModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.title = _data[\"title\"];\r\n this.text = _data[\"text\"];\r\n this.sortIndex = _data[\"sortIndex\"];\r\n this.propertyType = _data[\"propertyType\"];\r\n this.companySettingsInvoiceAttachmentId = _data[\"companySettingsInvoiceAttachmentId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanySettingsInvoiceAttachmentFooterRowModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanySettingsInvoiceAttachmentFooterRowModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"title\"] = this.title;\r\n data[\"text\"] = this.text;\r\n data[\"sortIndex\"] = this.sortIndex;\r\n data[\"propertyType\"] = this.propertyType;\r\n data[\"companySettingsInvoiceAttachmentId\"] = this.companySettingsInvoiceAttachmentId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanySettingsInvoiceAttachmentFooterRowModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n title?: string | undefined;\r\n text?: string | undefined;\r\n sortIndex?: number;\r\n propertyType?: PropertyType;\r\n companySettingsInvoiceAttachmentId?: string;\r\n}\r\n\r\nexport class CompanySettingsInvoiceAttachmentModel implements ICompanySettingsInvoiceAttachmentModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n company?: CompanyModel;\r\n companyId?: string;\r\n includeVat?: boolean;\r\n titleConsumtion?: string | undefined;\r\n titleProduction?: string | undefined;\r\n propertyInfoTitle?: string | undefined;\r\n detailedSummery?: boolean;\r\n energySourceImages?: string[] | undefined;\r\n footerRows?: CompanySettingsInvoiceAttachmentFooterRowModel[] | undefined;\r\n\r\n constructor(data?: ICompanySettingsInvoiceAttachmentModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.companyId = _data[\"companyId\"];\r\n this.includeVat = _data[\"includeVat\"];\r\n this.titleConsumtion = _data[\"titleConsumtion\"];\r\n this.titleProduction = _data[\"titleProduction\"];\r\n this.propertyInfoTitle = _data[\"propertyInfoTitle\"];\r\n this.detailedSummery = _data[\"detailedSummery\"];\r\n if (Array.isArray(_data[\"energySourceImages\"])) {\r\n this.energySourceImages = [] as any;\r\n for (let item of _data[\"energySourceImages\"])\r\n this.energySourceImages!.push(item);\r\n }\r\n if (Array.isArray(_data[\"footerRows\"])) {\r\n this.footerRows = [] as any;\r\n for (let item of _data[\"footerRows\"])\r\n this.footerRows!.push(CompanySettingsInvoiceAttachmentFooterRowModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanySettingsInvoiceAttachmentModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanySettingsInvoiceAttachmentModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"includeVat\"] = this.includeVat;\r\n data[\"titleConsumtion\"] = this.titleConsumtion;\r\n data[\"titleProduction\"] = this.titleProduction;\r\n data[\"propertyInfoTitle\"] = this.propertyInfoTitle;\r\n data[\"detailedSummery\"] = this.detailedSummery;\r\n if (Array.isArray(this.energySourceImages)) {\r\n data[\"energySourceImages\"] = [];\r\n for (let item of this.energySourceImages)\r\n data[\"energySourceImages\"].push(item);\r\n }\r\n if (Array.isArray(this.footerRows)) {\r\n data[\"footerRows\"] = [];\r\n for (let item of this.footerRows)\r\n data[\"footerRows\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanySettingsInvoiceAttachmentModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n company?: CompanyModel;\r\n companyId?: string;\r\n includeVat?: boolean;\r\n titleConsumtion?: string | undefined;\r\n titleProduction?: string | undefined;\r\n propertyInfoTitle?: string | undefined;\r\n detailedSummery?: boolean;\r\n energySourceImages?: string[] | undefined;\r\n footerRows?: CompanySettingsInvoiceAttachmentFooterRowModel[] | undefined;\r\n}\r\n\r\nexport class CompanySettingsCallback implements ICompanySettingsCallback {\r\n id?: string;\r\n url?: string | undefined;\r\n entities?: string[] | undefined;\r\n\r\n constructor(data?: ICompanySettingsCallback) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.url = _data[\"url\"];\r\n if (Array.isArray(_data[\"entities\"])) {\r\n this.entities = [] as any;\r\n for (let item of _data[\"entities\"])\r\n this.entities!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanySettingsCallback {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanySettingsCallback();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"url\"] = this.url;\r\n if (Array.isArray(this.entities)) {\r\n data[\"entities\"] = [];\r\n for (let item of this.entities)\r\n data[\"entities\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanySettingsCallback {\r\n id?: string;\r\n url?: string | undefined;\r\n entities?: string[] | undefined;\r\n}\r\n\r\nexport enum CommunicationType {\r\n InvoiceOverdue = \"InvoiceOverdue\",\r\n DeliveryStarted = \"DeliveryStarted\",\r\n Confirmation = \"Confirmation\",\r\n DeliveryReady = \"DeliveryReady\",\r\n BoundBySupplier = \"BoundBySupplier\",\r\n DeliveryCompletion = \"DeliveryCompletion\",\r\n PartOfRentCollectiveMeasurement = \"PartOfRentCollectiveMeasurement\",\r\n}\r\n\r\nexport enum SupplierChangeType {\r\n SupplierChange = \"SupplierChange\",\r\n Move = \"Move\",\r\n ObligationToReceive = \"ObligationToReceive\",\r\n RetailerTermination = \"RetailerTermination\",\r\n}\r\n\r\nexport class CommunicationTemplateModel implements ICommunicationTemplateModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n salesChannels?: SalesChannelModel[] | undefined;\r\n type?: CommunicationType;\r\n supplierChangeTypes?: SupplierChangeType[] | undefined;\r\n smsEnabled?: boolean;\r\n smsTemplate?: string | undefined;\r\n smsSubject?: string | undefined;\r\n emailEnabled?: boolean;\r\n emailTemplateId?: string | undefined;\r\n\r\n constructor(data?: ICommunicationTemplateModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n if (Array.isArray(_data[\"salesChannels\"])) {\r\n this.salesChannels = [] as any;\r\n for (let item of _data[\"salesChannels\"])\r\n this.salesChannels!.push(SalesChannelModel.fromJS(item));\r\n }\r\n this.type = _data[\"type\"];\r\n if (Array.isArray(_data[\"supplierChangeTypes\"])) {\r\n this.supplierChangeTypes = [] as any;\r\n for (let item of _data[\"supplierChangeTypes\"])\r\n this.supplierChangeTypes!.push(item);\r\n }\r\n this.smsEnabled = _data[\"smsEnabled\"];\r\n this.smsTemplate = _data[\"smsTemplate\"];\r\n this.smsSubject = _data[\"smsSubject\"];\r\n this.emailEnabled = _data[\"emailEnabled\"];\r\n this.emailTemplateId = _data[\"emailTemplateId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CommunicationTemplateModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CommunicationTemplateModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n if (Array.isArray(this.salesChannels)) {\r\n data[\"salesChannels\"] = [];\r\n for (let item of this.salesChannels)\r\n data[\"salesChannels\"].push(item.toJSON());\r\n }\r\n data[\"type\"] = this.type;\r\n if (Array.isArray(this.supplierChangeTypes)) {\r\n data[\"supplierChangeTypes\"] = [];\r\n for (let item of this.supplierChangeTypes)\r\n data[\"supplierChangeTypes\"].push(item);\r\n }\r\n data[\"smsEnabled\"] = this.smsEnabled;\r\n data[\"smsTemplate\"] = this.smsTemplate;\r\n data[\"smsSubject\"] = this.smsSubject;\r\n data[\"emailEnabled\"] = this.emailEnabled;\r\n data[\"emailTemplateId\"] = this.emailTemplateId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICommunicationTemplateModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n salesChannels?: SalesChannelModel[] | undefined;\r\n type?: CommunicationType;\r\n supplierChangeTypes?: SupplierChangeType[] | undefined;\r\n smsEnabled?: boolean;\r\n smsTemplate?: string | undefined;\r\n smsSubject?: string | undefined;\r\n emailEnabled?: boolean;\r\n emailTemplateId?: string | undefined;\r\n}\r\n\r\nexport class AccountingDimensionModel implements IAccountingDimensionModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n dimensionId?: number;\r\n name?: string | undefined;\r\n\r\n constructor(data?: IAccountingDimensionModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.dimensionId = _data[\"dimensionId\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AccountingDimensionModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AccountingDimensionModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"dimensionId\"] = this.dimensionId;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAccountingDimensionModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n dimensionId?: number;\r\n name?: string | undefined;\r\n}\r\n\r\nexport enum CustomerType {\r\n Private = \"Private\",\r\n Business = \"Business\",\r\n}\r\n\r\nexport enum PersonalIdType {\r\n PERSONAL_IDENTITY_NUMBER = \"PERSONAL_IDENTITY_NUMBER\",\r\n ORGANISATION_REGISTRATION_NUMBER = \"ORGANISATION_REGISTRATION_NUMBER\",\r\n COORDINATION_NUMBER = \"COORDINATION_NUMBER\",\r\n PERSONAL_ID_NOT_AVAILABLE = \"PERSONAL_ID_NOT_AVAILABLE\",\r\n}\r\n\r\nexport enum RecurringPaymentType {\r\n NONE = \"NONE\",\r\n AUTOGIRO = \"AUTOGIRO\",\r\n}\r\n\r\nexport class CustomerModel implements ICustomerModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n fullName?: string | undefined;\r\n customerType?: CustomerType;\r\n pid?: string | undefined;\r\n personalIdType?: PersonalIdType;\r\n birthDate?: moment.Moment | undefined;\r\n additionalPersonalId?: string | undefined;\r\n street?: string | undefined;\r\n coAddress?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n mobile?: string | undefined;\r\n phone?: string | undefined;\r\n email?: string | undefined;\r\n billogramCustomerId?: number | undefined;\r\n efaktura_Recipient_Identifier?: string | undefined;\r\n recurringPaymentType?: RecurringPaymentType;\r\n edi_electronic_id?: string | undefined;\r\n edi_operator?: string | undefined;\r\n edi_reference?: string | undefined;\r\n useInvoiceCollection?: boolean;\r\n invoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n searchData?: string | undefined;\r\n entityData?: string | undefined;\r\n entityType?: string | undefined;\r\n regardingName?: string | undefined;\r\n\r\n constructor(data?: ICustomerModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.fullName = _data[\"fullName\"];\r\n this.customerType = _data[\"customerType\"];\r\n this.pid = _data[\"pid\"];\r\n this.personalIdType = _data[\"personalIdType\"];\r\n this.birthDate = _data[\"birthDate\"] ? moment(_data[\"birthDate\"].toString()) : undefined;\r\n this.additionalPersonalId = _data[\"additionalPersonalId\"];\r\n this.street = _data[\"street\"];\r\n this.coAddress = _data[\"coAddress\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.phone = _data[\"phone\"];\r\n this.email = _data[\"email\"];\r\n this.billogramCustomerId = _data[\"billogramCustomerId\"];\r\n this.efaktura_Recipient_Identifier = _data[\"efaktura_Recipient_Identifier\"];\r\n this.recurringPaymentType = _data[\"recurringPaymentType\"];\r\n this.edi_electronic_id = _data[\"edi_electronic_id\"];\r\n this.edi_operator = _data[\"edi_operator\"];\r\n this.edi_reference = _data[\"edi_reference\"];\r\n this.useInvoiceCollection = _data[\"useInvoiceCollection\"];\r\n this.invoiceDeliveryMethod = _data[\"invoiceDeliveryMethod\"];\r\n this.searchData = _data[\"searchData\"];\r\n this.entityData = _data[\"entityData\"];\r\n this.entityType = _data[\"entityType\"];\r\n this.regardingName = _data[\"regardingName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): CustomerModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CustomerModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"fullName\"] = this.fullName;\r\n data[\"customerType\"] = this.customerType;\r\n data[\"pid\"] = this.pid;\r\n data[\"personalIdType\"] = this.personalIdType;\r\n data[\"birthDate\"] = this.birthDate ? this.birthDate.toISOString() : undefined;\r\n data[\"additionalPersonalId\"] = this.additionalPersonalId;\r\n data[\"street\"] = this.street;\r\n data[\"coAddress\"] = this.coAddress;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"phone\"] = this.phone;\r\n data[\"email\"] = this.email;\r\n data[\"billogramCustomerId\"] = this.billogramCustomerId;\r\n data[\"efaktura_Recipient_Identifier\"] = this.efaktura_Recipient_Identifier;\r\n data[\"recurringPaymentType\"] = this.recurringPaymentType;\r\n data[\"edi_electronic_id\"] = this.edi_electronic_id;\r\n data[\"edi_operator\"] = this.edi_operator;\r\n data[\"edi_reference\"] = this.edi_reference;\r\n data[\"useInvoiceCollection\"] = this.useInvoiceCollection;\r\n data[\"invoiceDeliveryMethod\"] = this.invoiceDeliveryMethod;\r\n data[\"searchData\"] = this.searchData;\r\n data[\"entityData\"] = this.entityData;\r\n data[\"entityType\"] = this.entityType;\r\n data[\"regardingName\"] = this.regardingName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICustomerModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n fullName?: string | undefined;\r\n customerType?: CustomerType;\r\n pid?: string | undefined;\r\n personalIdType?: PersonalIdType;\r\n birthDate?: moment.Moment | undefined;\r\n additionalPersonalId?: string | undefined;\r\n street?: string | undefined;\r\n coAddress?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n mobile?: string | undefined;\r\n phone?: string | undefined;\r\n email?: string | undefined;\r\n billogramCustomerId?: number | undefined;\r\n efaktura_Recipient_Identifier?: string | undefined;\r\n recurringPaymentType?: RecurringPaymentType;\r\n edi_electronic_id?: string | undefined;\r\n edi_operator?: string | undefined;\r\n edi_reference?: string | undefined;\r\n useInvoiceCollection?: boolean;\r\n invoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n searchData?: string | undefined;\r\n entityData?: string | undefined;\r\n entityType?: string | undefined;\r\n regardingName?: string | undefined;\r\n}\r\n\r\nexport enum PaymentStatus {\r\n UNPAID = \"UNPAID\",\r\n PAID = \"PAID\",\r\n ENDED = \"ENDED\",\r\n CREDITED = \"CREDITED\",\r\n DELETED = \"DELETED\",\r\n UNKNOWN = \"UNKNOWN\",\r\n CONFIRMED_LOSS = \"CONFIRMED_LOSS\",\r\n}\r\n\r\nexport class PriceModel implements IPriceModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n fromDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n monthly?: number;\r\n\r\n constructor(data?: IPriceModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.fromDate = _data[\"fromDate\"] ? moment(_data[\"fromDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.monthly = _data[\"monthly\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PriceModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PriceModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"fromDate\"] = this.fromDate ? this.fromDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"monthly\"] = this.monthly;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPriceModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n fromDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n monthly?: number;\r\n}\r\n\r\nexport enum ContractPriceType {\r\n FIXED_PRICE = \"FIXED_PRICE\",\r\n VARIABLE_PRICE = \"VARIABLE_PRICE\",\r\n}\r\n\r\nexport enum ContractDebitType {\r\n MONTHLY = \"MONTHLY\",\r\n HOURLY = \"HOURLY\",\r\n}\r\n\r\nexport class ContractTypeModel implements IContractTypeModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n publicName?: string | undefined;\r\n bindingPeriod?: number;\r\n noticePeriod?: number;\r\n prices?: PriceModel[] | undefined;\r\n contractPriceType?: ContractPriceType;\r\n contractDebitType?: ContractDebitType;\r\n\r\n constructor(data?: IContractTypeModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.name = _data[\"name\"];\r\n this.publicName = _data[\"publicName\"];\r\n this.bindingPeriod = _data[\"bindingPeriod\"];\r\n this.noticePeriod = _data[\"noticePeriod\"];\r\n if (Array.isArray(_data[\"prices\"])) {\r\n this.prices = [] as any;\r\n for (let item of _data[\"prices\"])\r\n this.prices!.push(PriceModel.fromJS(item));\r\n }\r\n this.contractPriceType = _data[\"contractPriceType\"];\r\n this.contractDebitType = _data[\"contractDebitType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContractTypeModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContractTypeModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"name\"] = this.name;\r\n data[\"publicName\"] = this.publicName;\r\n data[\"bindingPeriod\"] = this.bindingPeriod;\r\n data[\"noticePeriod\"] = this.noticePeriod;\r\n if (Array.isArray(this.prices)) {\r\n data[\"prices\"] = [];\r\n for (let item of this.prices)\r\n data[\"prices\"].push(item.toJSON());\r\n }\r\n data[\"contractPriceType\"] = this.contractPriceType;\r\n data[\"contractDebitType\"] = this.contractDebitType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IContractTypeModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n publicName?: string | undefined;\r\n bindingPeriod?: number;\r\n noticePeriod?: number;\r\n prices?: PriceModel[] | undefined;\r\n contractPriceType?: ContractPriceType;\r\n contractDebitType?: ContractDebitType;\r\n}\r\n\r\nexport class PriceKWh implements IPriceKWh {\r\n sE1?: number;\r\n sE2?: number;\r\n sE3?: number;\r\n sE4?: number;\r\n certificate?: number;\r\n environment?: number;\r\n tradeFee?: number;\r\n\r\n constructor(data?: IPriceKWh) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sE1 = _data[\"sE1\"];\r\n this.sE2 = _data[\"sE2\"];\r\n this.sE3 = _data[\"sE3\"];\r\n this.sE4 = _data[\"sE4\"];\r\n this.certificate = _data[\"certificate\"];\r\n this.environment = _data[\"environment\"];\r\n this.tradeFee = _data[\"tradeFee\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PriceKWh {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PriceKWh();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sE1\"] = this.sE1;\r\n data[\"sE2\"] = this.sE2;\r\n data[\"sE3\"] = this.sE3;\r\n data[\"sE4\"] = this.sE4;\r\n data[\"certificate\"] = this.certificate;\r\n data[\"environment\"] = this.environment;\r\n data[\"tradeFee\"] = this.tradeFee;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPriceKWh {\r\n sE1?: number;\r\n sE2?: number;\r\n sE3?: number;\r\n sE4?: number;\r\n certificate?: number;\r\n environment?: number;\r\n tradeFee?: number;\r\n}\r\n\r\nexport class Tag implements ITag {\r\n key?: string | undefined;\r\n value?: string | undefined;\r\n\r\n constructor(data?: ITag) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.key = _data[\"key\"];\r\n this.value = _data[\"value\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Tag {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Tag();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"key\"] = this.key;\r\n data[\"value\"] = this.value;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITag {\r\n key?: string | undefined;\r\n value?: string | undefined;\r\n}\r\n\r\nexport class Contract implements IContract {\r\n id?: string;\r\n fromDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n elavtalId?: string;\r\n contractType?: ContractTypeModel;\r\n contractTypeId?: string;\r\n fixedPriceKWh?: PriceKWh;\r\n fixedPriceMonthly?: number | undefined;\r\n initialContract?: boolean;\r\n invoiceText?: string | undefined;\r\n salesChannelId?: string;\r\n salesChannel?: SalesChannelModel;\r\n salesDate?: moment.Moment | undefined;\r\n salesPerson?: string | undefined;\r\n signedFromIp?: string | undefined;\r\n tags?: Tag[] | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n\r\n constructor(data?: IContract) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.fromDate = _data[\"fromDate\"] ? moment(_data[\"fromDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.elavtalId = _data[\"elavtalId\"];\r\n this.contractType = _data[\"contractType\"] ? ContractTypeModel.fromJS(_data[\"contractType\"]) : undefined;\r\n this.contractTypeId = _data[\"contractTypeId\"];\r\n this.fixedPriceKWh = _data[\"fixedPriceKWh\"] ? PriceKWh.fromJS(_data[\"fixedPriceKWh\"]) : undefined;\r\n this.fixedPriceMonthly = _data[\"fixedPriceMonthly\"];\r\n this.initialContract = _data[\"initialContract\"];\r\n this.invoiceText = _data[\"invoiceText\"];\r\n this.salesChannelId = _data[\"salesChannelId\"];\r\n this.salesChannel = _data[\"salesChannel\"] ? SalesChannelModel.fromJS(_data[\"salesChannel\"]) : undefined;\r\n this.salesDate = _data[\"salesDate\"] ? moment(_data[\"salesDate\"].toString()) : undefined;\r\n this.salesPerson = _data[\"salesPerson\"];\r\n this.signedFromIp = _data[\"signedFromIp\"];\r\n if (Array.isArray(_data[\"tags\"])) {\r\n this.tags = [] as any;\r\n for (let item of _data[\"tags\"])\r\n this.tags!.push(Tag.fromJS(item));\r\n }\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Contract {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Contract();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"fromDate\"] = this.fromDate ? this.fromDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n data[\"contractType\"] = this.contractType ? this.contractType.toJSON() : undefined;\r\n data[\"contractTypeId\"] = this.contractTypeId;\r\n data[\"fixedPriceKWh\"] = this.fixedPriceKWh ? this.fixedPriceKWh.toJSON() : undefined;\r\n data[\"fixedPriceMonthly\"] = this.fixedPriceMonthly;\r\n data[\"initialContract\"] = this.initialContract;\r\n data[\"invoiceText\"] = this.invoiceText;\r\n data[\"salesChannelId\"] = this.salesChannelId;\r\n data[\"salesChannel\"] = this.salesChannel ? this.salesChannel.toJSON() : undefined;\r\n data[\"salesDate\"] = this.salesDate ? this.salesDate.toISOString() : undefined;\r\n data[\"salesPerson\"] = this.salesPerson;\r\n data[\"signedFromIp\"] = this.signedFromIp;\r\n if (Array.isArray(this.tags)) {\r\n data[\"tags\"] = [];\r\n for (let item of this.tags)\r\n data[\"tags\"].push(item.toJSON());\r\n }\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IContract {\r\n id?: string;\r\n fromDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n elavtalId?: string;\r\n contractType?: ContractTypeModel;\r\n contractTypeId?: string;\r\n fixedPriceKWh?: PriceKWh;\r\n fixedPriceMonthly?: number | undefined;\r\n initialContract?: boolean;\r\n invoiceText?: string | undefined;\r\n salesChannelId?: string;\r\n salesChannel?: SalesChannelModel;\r\n salesDate?: moment.Moment | undefined;\r\n salesPerson?: string | undefined;\r\n signedFromIp?: string | undefined;\r\n tags?: Tag[] | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n}\r\n\r\nexport class InvoiceDataRowModel implements IInvoiceDataRowModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n\r\n constructor(data?: IInvoiceDataRowModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.invoiceDataId = _data[\"invoiceDataId\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.contract = _data[\"contract\"] ? Contract.fromJS(_data[\"contract\"]) : undefined;\r\n this.price = _data[\"price\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.amount = _data[\"amount\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDataRowModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDataRowModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"invoiceDataId\"] = this.invoiceDataId;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"contract\"] = this.contract ? this.contract.toJSON() : undefined;\r\n data[\"price\"] = this.price;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"amount\"] = this.amount;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceDataRowModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n}\r\n\r\nexport class InvoiceDataModel implements IInvoiceDataModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataStatus?: InvoiceDataStatus;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n rows?: InvoiceDataRowModel[] | undefined;\r\n invoiceId?: string | undefined;\r\n invoice?: InvoiceModel;\r\n amountExkludingVat?: number;\r\n vatAmount?: number;\r\n amountIncludingVat?: number;\r\n consumption?: number;\r\n rounding?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n finalInvoice?: boolean;\r\n invoicingId?: string;\r\n invoiceCreated?: boolean;\r\n\r\n constructor(data?: IInvoiceDataModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.invoiceDataStatus = _data[\"invoiceDataStatus\"];\r\n this.elavtalId = _data[\"elavtalId\"];\r\n this.elavtal = _data[\"elavtal\"] ? Elavtal.fromJS(_data[\"elavtal\"]) : undefined;\r\n if (Array.isArray(_data[\"rows\"])) {\r\n this.rows = [] as any;\r\n for (let item of _data[\"rows\"])\r\n this.rows!.push(InvoiceDataRowModel.fromJS(item));\r\n }\r\n this.invoiceId = _data[\"invoiceId\"];\r\n this.invoice = _data[\"invoice\"] ? InvoiceModel.fromJS(_data[\"invoice\"]) : undefined;\r\n this.amountExkludingVat = _data[\"amountExkludingVat\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n this.amountIncludingVat = _data[\"amountIncludingVat\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.rounding = _data[\"rounding\"];\r\n this.dateOfInvoice = _data[\"dateOfInvoice\"] ? moment(_data[\"dateOfInvoice\"].toString()) : undefined;\r\n this.dueDate = _data[\"dueDate\"] ? moment(_data[\"dueDate\"].toString()) : undefined;\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.finalInvoice = _data[\"finalInvoice\"];\r\n this.invoicingId = _data[\"invoicingId\"];\r\n this.invoiceCreated = _data[\"invoiceCreated\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDataModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDataModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"invoiceDataStatus\"] = this.invoiceDataStatus;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n data[\"elavtal\"] = this.elavtal ? this.elavtal.toJSON() : undefined;\r\n if (Array.isArray(this.rows)) {\r\n data[\"rows\"] = [];\r\n for (let item of this.rows)\r\n data[\"rows\"].push(item.toJSON());\r\n }\r\n data[\"invoiceId\"] = this.invoiceId;\r\n data[\"invoice\"] = this.invoice ? this.invoice.toJSON() : undefined;\r\n data[\"amountExkludingVat\"] = this.amountExkludingVat;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n data[\"amountIncludingVat\"] = this.amountIncludingVat;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"rounding\"] = this.rounding;\r\n data[\"dateOfInvoice\"] = this.dateOfInvoice ? this.dateOfInvoice.toISOString() : undefined;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"finalInvoice\"] = this.finalInvoice;\r\n data[\"invoicingId\"] = this.invoicingId;\r\n data[\"invoiceCreated\"] = this.invoiceCreated;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceDataModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataStatus?: InvoiceDataStatus;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n rows?: InvoiceDataRowModel[] | undefined;\r\n invoiceId?: string | undefined;\r\n invoice?: InvoiceModel;\r\n amountExkludingVat?: number;\r\n vatAmount?: number;\r\n amountIncludingVat?: number;\r\n consumption?: number;\r\n rounding?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n finalInvoice?: boolean;\r\n invoicingId?: string;\r\n invoiceCreated?: boolean;\r\n}\r\n\r\nexport enum DeliveryMethod {\r\n UNKNOWN = \"UNKNOWN\",\r\n EMAIL = \"EMAIL\",\r\n SMS = \"SMS\",\r\n LETTER = \"LETTER\",\r\n EFAKTURA = \"EFAKTURA\",\r\n}\r\n\r\nexport enum InvoiceStatus {\r\n NEW = \"NEW\",\r\n SENT = \"SENT\",\r\n SENDING = \"SENDING\",\r\n}\r\n\r\nexport class InvoiceModel implements IInvoiceModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n customerId?: string | undefined;\r\n customer?: CustomerModel;\r\n paymentStatus?: PaymentStatus;\r\n paymentDescription?: string | undefined;\r\n url?: string | undefined;\r\n recipientUrl?: string | undefined;\r\n invoiceDatas?: InvoiceDataModel[] | undefined;\r\n invoiceNumber?: string | undefined;\r\n bankGiro?: string | undefined;\r\n ocr?: string | undefined;\r\n amount?: number;\r\n rounding?: number;\r\n reminderFee?: number;\r\n interestFee?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n respiteDate?: moment.Moment | undefined;\r\n overdueNotificationSent?: boolean;\r\n deliveryMethod?: DeliveryMethod;\r\n deliveryRecipient?: string | undefined;\r\n rows?: InvoiceRowModel[] | undefined;\r\n status?: InvoiceStatus;\r\n invoicingId?: string;\r\n regardingName?: string | undefined;\r\n\r\n constructor(data?: IInvoiceModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.customerId = _data[\"customerId\"];\r\n this.customer = _data[\"customer\"] ? CustomerModel.fromJS(_data[\"customer\"]) : undefined;\r\n this.paymentStatus = _data[\"paymentStatus\"];\r\n this.paymentDescription = _data[\"paymentDescription\"];\r\n this.url = _data[\"url\"];\r\n this.recipientUrl = _data[\"recipientUrl\"];\r\n if (Array.isArray(_data[\"invoiceDatas\"])) {\r\n this.invoiceDatas = [] as any;\r\n for (let item of _data[\"invoiceDatas\"])\r\n this.invoiceDatas!.push(InvoiceDataModel.fromJS(item));\r\n }\r\n this.invoiceNumber = _data[\"invoiceNumber\"];\r\n this.bankGiro = _data[\"bankGiro\"];\r\n this.ocr = _data[\"ocr\"];\r\n this.amount = _data[\"amount\"];\r\n this.rounding = _data[\"rounding\"];\r\n this.reminderFee = _data[\"reminderFee\"];\r\n this.interestFee = _data[\"interestFee\"];\r\n this.dateOfInvoice = _data[\"dateOfInvoice\"] ? moment(_data[\"dateOfInvoice\"].toString()) : undefined;\r\n this.dueDate = _data[\"dueDate\"] ? moment(_data[\"dueDate\"].toString()) : undefined;\r\n this.respiteDate = _data[\"respiteDate\"] ? moment(_data[\"respiteDate\"].toString()) : undefined;\r\n this.overdueNotificationSent = _data[\"overdueNotificationSent\"];\r\n this.deliveryMethod = _data[\"deliveryMethod\"];\r\n this.deliveryRecipient = _data[\"deliveryRecipient\"];\r\n if (Array.isArray(_data[\"rows\"])) {\r\n this.rows = [] as any;\r\n for (let item of _data[\"rows\"])\r\n this.rows!.push(InvoiceRowModel.fromJS(item));\r\n }\r\n this.status = _data[\"status\"];\r\n this.invoicingId = _data[\"invoicingId\"];\r\n this.regardingName = _data[\"regardingName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n data[\"paymentStatus\"] = this.paymentStatus;\r\n data[\"paymentDescription\"] = this.paymentDescription;\r\n data[\"url\"] = this.url;\r\n data[\"recipientUrl\"] = this.recipientUrl;\r\n if (Array.isArray(this.invoiceDatas)) {\r\n data[\"invoiceDatas\"] = [];\r\n for (let item of this.invoiceDatas)\r\n data[\"invoiceDatas\"].push(item.toJSON());\r\n }\r\n data[\"invoiceNumber\"] = this.invoiceNumber;\r\n data[\"bankGiro\"] = this.bankGiro;\r\n data[\"ocr\"] = this.ocr;\r\n data[\"amount\"] = this.amount;\r\n data[\"rounding\"] = this.rounding;\r\n data[\"reminderFee\"] = this.reminderFee;\r\n data[\"interestFee\"] = this.interestFee;\r\n data[\"dateOfInvoice\"] = this.dateOfInvoice ? this.dateOfInvoice.toISOString() : undefined;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"respiteDate\"] = this.respiteDate ? this.respiteDate.toISOString() : undefined;\r\n data[\"overdueNotificationSent\"] = this.overdueNotificationSent;\r\n data[\"deliveryMethod\"] = this.deliveryMethod;\r\n data[\"deliveryRecipient\"] = this.deliveryRecipient;\r\n if (Array.isArray(this.rows)) {\r\n data[\"rows\"] = [];\r\n for (let item of this.rows)\r\n data[\"rows\"].push(item.toJSON());\r\n }\r\n data[\"status\"] = this.status;\r\n data[\"invoicingId\"] = this.invoicingId;\r\n data[\"regardingName\"] = this.regardingName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n customerId?: string | undefined;\r\n customer?: CustomerModel;\r\n paymentStatus?: PaymentStatus;\r\n paymentDescription?: string | undefined;\r\n url?: string | undefined;\r\n recipientUrl?: string | undefined;\r\n invoiceDatas?: InvoiceDataModel[] | undefined;\r\n invoiceNumber?: string | undefined;\r\n bankGiro?: string | undefined;\r\n ocr?: string | undefined;\r\n amount?: number;\r\n rounding?: number;\r\n reminderFee?: number;\r\n interestFee?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n respiteDate?: moment.Moment | undefined;\r\n overdueNotificationSent?: boolean;\r\n deliveryMethod?: DeliveryMethod;\r\n deliveryRecipient?: string | undefined;\r\n rows?: InvoiceRowModel[] | undefined;\r\n status?: InvoiceStatus;\r\n invoicingId?: string;\r\n regardingName?: string | undefined;\r\n}\r\n\r\nexport class InvoiceRowModel implements IInvoiceRowModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n heading?: string | undefined;\r\n description?: string | undefined;\r\n unit?: string | undefined;\r\n quantity?: number;\r\n price?: number;\r\n amount?: number;\r\n vatAmount?: number;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n invoiceId?: string;\r\n invoice?: InvoiceModel;\r\n invoiceDataId?: string | undefined;\r\n invoiceData?: InvoiceDataModel;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n accountingObjects?: AccountingObjectModel[] | undefined;\r\n invoiceItemId?: string | undefined;\r\n invoicePriceGroupId?: string | undefined;\r\n articleId?: string | undefined;\r\n\r\n constructor(data?: IInvoiceRowModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.heading = _data[\"heading\"];\r\n this.description = _data[\"description\"];\r\n this.unit = _data[\"unit\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.price = _data[\"price\"];\r\n this.amount = _data[\"amount\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n this.incomeAccount = _data[\"incomeAccount\"];\r\n this.vatAccount = _data[\"vatAccount\"];\r\n this.invoiceId = _data[\"invoiceId\"];\r\n this.invoice = _data[\"invoice\"] ? InvoiceModel.fromJS(_data[\"invoice\"]) : undefined;\r\n this.invoiceDataId = _data[\"invoiceDataId\"];\r\n this.invoiceData = _data[\"invoiceData\"] ? InvoiceDataModel.fromJS(_data[\"invoiceData\"]) : undefined;\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"accountingObjects\"])) {\r\n this.accountingObjects = [] as any;\r\n for (let item of _data[\"accountingObjects\"])\r\n this.accountingObjects!.push(AccountingObjectModel.fromJS(item));\r\n }\r\n this.invoiceItemId = _data[\"invoiceItemId\"];\r\n this.invoicePriceGroupId = _data[\"invoicePriceGroupId\"];\r\n this.articleId = _data[\"articleId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceRowModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceRowModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"heading\"] = this.heading;\r\n data[\"description\"] = this.description;\r\n data[\"unit\"] = this.unit;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"price\"] = this.price;\r\n data[\"amount\"] = this.amount;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n data[\"incomeAccount\"] = this.incomeAccount;\r\n data[\"vatAccount\"] = this.vatAccount;\r\n data[\"invoiceId\"] = this.invoiceId;\r\n data[\"invoice\"] = this.invoice ? this.invoice.toJSON() : undefined;\r\n data[\"invoiceDataId\"] = this.invoiceDataId;\r\n data[\"invoiceData\"] = this.invoiceData ? this.invoiceData.toJSON() : undefined;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n if (Array.isArray(this.accountingObjects)) {\r\n data[\"accountingObjects\"] = [];\r\n for (let item of this.accountingObjects)\r\n data[\"accountingObjects\"].push(item.toJSON());\r\n }\r\n data[\"invoiceItemId\"] = this.invoiceItemId;\r\n data[\"invoicePriceGroupId\"] = this.invoicePriceGroupId;\r\n data[\"articleId\"] = this.articleId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceRowModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n heading?: string | undefined;\r\n description?: string | undefined;\r\n unit?: string | undefined;\r\n quantity?: number;\r\n price?: number;\r\n amount?: number;\r\n vatAmount?: number;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n invoiceId?: string;\r\n invoice?: InvoiceModel;\r\n invoiceDataId?: string | undefined;\r\n invoiceData?: InvoiceDataModel;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n accountingObjects?: AccountingObjectModel[] | undefined;\r\n invoiceItemId?: string | undefined;\r\n invoicePriceGroupId?: string | undefined;\r\n articleId?: string | undefined;\r\n}\r\n\r\nexport class AccountingObjectModel implements IAccountingObjectModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n objectId?: number;\r\n name?: string | undefined;\r\n dimensionId?: string;\r\n dimension?: AccountingDimensionModel;\r\n deliveries?: Elavtal[] | undefined;\r\n invoiceRows?: InvoiceRowModel[] | undefined;\r\n salesChannels?: SalesChannelModel[] | undefined;\r\n\r\n constructor(data?: IAccountingObjectModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.objectId = _data[\"objectId\"];\r\n this.name = _data[\"name\"];\r\n this.dimensionId = _data[\"dimensionId\"];\r\n this.dimension = _data[\"dimension\"] ? AccountingDimensionModel.fromJS(_data[\"dimension\"]) : undefined;\r\n if (Array.isArray(_data[\"deliveries\"])) {\r\n this.deliveries = [] as any;\r\n for (let item of _data[\"deliveries\"])\r\n this.deliveries!.push(Elavtal.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"invoiceRows\"])) {\r\n this.invoiceRows = [] as any;\r\n for (let item of _data[\"invoiceRows\"])\r\n this.invoiceRows!.push(InvoiceRowModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"salesChannels\"])) {\r\n this.salesChannels = [] as any;\r\n for (let item of _data[\"salesChannels\"])\r\n this.salesChannels!.push(SalesChannelModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): AccountingObjectModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AccountingObjectModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"objectId\"] = this.objectId;\r\n data[\"name\"] = this.name;\r\n data[\"dimensionId\"] = this.dimensionId;\r\n data[\"dimension\"] = this.dimension ? this.dimension.toJSON() : undefined;\r\n if (Array.isArray(this.deliveries)) {\r\n data[\"deliveries\"] = [];\r\n for (let item of this.deliveries)\r\n data[\"deliveries\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.invoiceRows)) {\r\n data[\"invoiceRows\"] = [];\r\n for (let item of this.invoiceRows)\r\n data[\"invoiceRows\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.salesChannels)) {\r\n data[\"salesChannels\"] = [];\r\n for (let item of this.salesChannels)\r\n data[\"salesChannels\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAccountingObjectModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n objectId?: number;\r\n name?: string | undefined;\r\n dimensionId?: string;\r\n dimension?: AccountingDimensionModel;\r\n deliveries?: Elavtal[] | undefined;\r\n invoiceRows?: InvoiceRowModel[] | undefined;\r\n salesChannels?: SalesChannelModel[] | undefined;\r\n}\r\n\r\nexport class SalesChannelModel implements ISalesChannelModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n channelIndex?: number;\r\n communicationTemplates?: CommunicationTemplateModel[] | undefined;\r\n accountingObjects?: AccountingObjectModel[] | undefined;\r\n\r\n constructor(data?: ISalesChannelModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.name = _data[\"name\"];\r\n this.channelIndex = _data[\"channelIndex\"];\r\n if (Array.isArray(_data[\"communicationTemplates\"])) {\r\n this.communicationTemplates = [] as any;\r\n for (let item of _data[\"communicationTemplates\"])\r\n this.communicationTemplates!.push(CommunicationTemplateModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"accountingObjects\"])) {\r\n this.accountingObjects = [] as any;\r\n for (let item of _data[\"accountingObjects\"])\r\n this.accountingObjects!.push(AccountingObjectModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): SalesChannelModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SalesChannelModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"name\"] = this.name;\r\n data[\"channelIndex\"] = this.channelIndex;\r\n if (Array.isArray(this.communicationTemplates)) {\r\n data[\"communicationTemplates\"] = [];\r\n for (let item of this.communicationTemplates)\r\n data[\"communicationTemplates\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.accountingObjects)) {\r\n data[\"accountingObjects\"] = [];\r\n for (let item of this.accountingObjects)\r\n data[\"accountingObjects\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISalesChannelModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n channelIndex?: number;\r\n communicationTemplates?: CommunicationTemplateModel[] | undefined;\r\n accountingObjects?: AccountingObjectModel[] | undefined;\r\n}\r\n\r\nexport class AutoCompletionTemplate implements IAutoCompletionTemplate {\r\n salesChannelId?: string;\r\n salesChannel?: SalesChannelModel;\r\n communicationTemplateId?: string;\r\n communicationTemplate?: CommunicationTemplateModel;\r\n\r\n constructor(data?: IAutoCompletionTemplate) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.salesChannelId = _data[\"salesChannelId\"];\r\n this.salesChannel = _data[\"salesChannel\"] ? SalesChannelModel.fromJS(_data[\"salesChannel\"]) : undefined;\r\n this.communicationTemplateId = _data[\"communicationTemplateId\"];\r\n this.communicationTemplate = _data[\"communicationTemplate\"] ? CommunicationTemplateModel.fromJS(_data[\"communicationTemplate\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AutoCompletionTemplate {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AutoCompletionTemplate();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"salesChannelId\"] = this.salesChannelId;\r\n data[\"salesChannel\"] = this.salesChannel ? this.salesChannel.toJSON() : undefined;\r\n data[\"communicationTemplateId\"] = this.communicationTemplateId;\r\n data[\"communicationTemplate\"] = this.communicationTemplate ? this.communicationTemplate.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAutoCompletionTemplate {\r\n salesChannelId?: string;\r\n salesChannel?: SalesChannelModel;\r\n communicationTemplateId?: string;\r\n communicationTemplate?: CommunicationTemplateModel;\r\n}\r\n\r\nexport class CompanyModel implements ICompanyModel {\r\n callbackUrl?: string | undefined;\r\n handleWarrantMove?: boolean;\r\n handleWarrantMoveReplies?: boolean;\r\n handleWarrantNetOwnerReplies?: boolean;\r\n handleWarrantNetOwner?: boolean;\r\n handleWarrantSupplierReplies?: boolean;\r\n autoSendWarrantMail?: boolean;\r\n autoStartChangeProcessOnNewDeliveries?: boolean;\r\n autoStartChangeProcessMinDaysUntilStart?: number | undefined;\r\n autoStartChangeProcessMaxDaysUntilStart?: number | undefined;\r\n autoStartChangeProcessMinDaysAfterSales?: number | undefined;\r\n handleWarrantSupplier?: boolean;\r\n warrantMail?: string | undefined;\r\n warrantChangedStartDateMail?: string | undefined;\r\n warrantSender?: string | undefined;\r\n warrantCompanyName?: string | undefined;\r\n warrantCompanyLegalName?: string | undefined;\r\n warrantNetOwnerTemplateId?: string | undefined;\r\n warrantMoveTemplateId?: string | undefined;\r\n warrantChangedStartDateTemplateId?: string | undefined;\r\n warrantSupplierTemplateId?: string | undefined;\r\n warrantDailyRemainderTemplateId?: string | undefined;\r\n genericMailTemplateId?: string | undefined;\r\n useCompletionFlow?: boolean;\r\n completionUrl?: string | undefined;\r\n sendSmsFrom?: string | undefined;\r\n sendDeliveryStartSMS?: boolean;\r\n sendDeliveryHasStartedSMS?: boolean;\r\n sendConfirmationSMS?: boolean;\r\n sendElavtalsServiceSMS?: boolean;\r\n sendConfirmationEmail?: boolean;\r\n standardConfirmationMailTemplateId?: string | undefined;\r\n sendMailFromAdress?: string | undefined;\r\n sendMailFromName?: string | undefined;\r\n useEdiel?: boolean;\r\n edielId?: string | undefined;\r\n useEdiEncryption?: boolean;\r\n balanceResponsibleEdielId?: string | undefined;\r\n getActorinfoWhenPropertyCreated?: boolean;\r\n minimumAmountToCreateInvoice?: number;\r\n useAutomaticCompletion?: boolean;\r\n id?: string;\r\n name?: string | undefined;\r\n legalName?: string | undefined;\r\n companyId?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdBy?: string;\r\n billogramSettings?: CompanySettingsBillogramModel;\r\n communicationSettings!: CompanySettingsCommunicationModel;\r\n invoicingSettings!: CompanySettingsInvoicing;\r\n invoiceAttachmentSettingsId?: string | undefined;\r\n invoiceAttachmentSettings?: CompanySettingsInvoiceAttachmentModel;\r\n callbackSettings?: CompanySettingsCallback[] | undefined;\r\n autoCompletionTemplates?: AutoCompletionTemplate[] | undefined;\r\n\r\n constructor(data?: ICompanyModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n if (!data) {\r\n this.communicationSettings = new CompanySettingsCommunicationModel();\r\n this.invoicingSettings = new CompanySettingsInvoicing();\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.callbackUrl = _data[\"callbackUrl\"];\r\n this.handleWarrantMove = _data[\"handleWarrantMove\"];\r\n this.handleWarrantMoveReplies = _data[\"handleWarrantMoveReplies\"];\r\n this.handleWarrantNetOwnerReplies = _data[\"handleWarrantNetOwnerReplies\"];\r\n this.handleWarrantNetOwner = _data[\"handleWarrantNetOwner\"];\r\n this.handleWarrantSupplierReplies = _data[\"handleWarrantSupplierReplies\"];\r\n this.autoSendWarrantMail = _data[\"autoSendWarrantMail\"];\r\n this.autoStartChangeProcessOnNewDeliveries = _data[\"autoStartChangeProcessOnNewDeliveries\"];\r\n this.autoStartChangeProcessMinDaysUntilStart = _data[\"autoStartChangeProcessMinDaysUntilStart\"];\r\n this.autoStartChangeProcessMaxDaysUntilStart = _data[\"autoStartChangeProcessMaxDaysUntilStart\"];\r\n this.autoStartChangeProcessMinDaysAfterSales = _data[\"autoStartChangeProcessMinDaysAfterSales\"];\r\n this.handleWarrantSupplier = _data[\"handleWarrantSupplier\"];\r\n this.warrantMail = _data[\"warrantMail\"];\r\n this.warrantChangedStartDateMail = _data[\"warrantChangedStartDateMail\"];\r\n this.warrantSender = _data[\"warrantSender\"];\r\n this.warrantCompanyName = _data[\"warrantCompanyName\"];\r\n this.warrantCompanyLegalName = _data[\"warrantCompanyLegalName\"];\r\n this.warrantNetOwnerTemplateId = _data[\"warrantNetOwnerTemplateId\"];\r\n this.warrantMoveTemplateId = _data[\"warrantMoveTemplateId\"];\r\n this.warrantChangedStartDateTemplateId = _data[\"warrantChangedStartDateTemplateId\"];\r\n this.warrantSupplierTemplateId = _data[\"warrantSupplierTemplateId\"];\r\n this.warrantDailyRemainderTemplateId = _data[\"warrantDailyRemainderTemplateId\"];\r\n this.genericMailTemplateId = _data[\"genericMailTemplateId\"];\r\n this.useCompletionFlow = _data[\"useCompletionFlow\"];\r\n this.completionUrl = _data[\"completionUrl\"];\r\n this.sendSmsFrom = _data[\"sendSmsFrom\"];\r\n this.sendDeliveryStartSMS = _data[\"sendDeliveryStartSMS\"];\r\n this.sendDeliveryHasStartedSMS = _data[\"sendDeliveryHasStartedSMS\"];\r\n this.sendConfirmationSMS = _data[\"sendConfirmationSMS\"];\r\n this.sendElavtalsServiceSMS = _data[\"sendElavtalsServiceSMS\"];\r\n this.sendConfirmationEmail = _data[\"sendConfirmationEmail\"];\r\n this.standardConfirmationMailTemplateId = _data[\"standardConfirmationMailTemplateId\"];\r\n this.sendMailFromAdress = _data[\"sendMailFromAdress\"];\r\n this.sendMailFromName = _data[\"sendMailFromName\"];\r\n this.useEdiel = _data[\"useEdiel\"];\r\n this.edielId = _data[\"edielId\"];\r\n this.useEdiEncryption = _data[\"useEdiEncryption\"];\r\n this.balanceResponsibleEdielId = _data[\"balanceResponsibleEdielId\"];\r\n this.getActorinfoWhenPropertyCreated = _data[\"getActorinfoWhenPropertyCreated\"];\r\n this.minimumAmountToCreateInvoice = _data[\"minimumAmountToCreateInvoice\"];\r\n this.useAutomaticCompletion = _data[\"useAutomaticCompletion\"];\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.legalName = _data[\"legalName\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.billogramSettings = _data[\"billogramSettings\"] ? CompanySettingsBillogramModel.fromJS(_data[\"billogramSettings\"]) : undefined;\r\n this.communicationSettings = _data[\"communicationSettings\"] ? CompanySettingsCommunicationModel.fromJS(_data[\"communicationSettings\"]) : new CompanySettingsCommunicationModel();\r\n this.invoicingSettings = _data[\"invoicingSettings\"] ? CompanySettingsInvoicing.fromJS(_data[\"invoicingSettings\"]) : new CompanySettingsInvoicing();\r\n this.invoiceAttachmentSettingsId = _data[\"invoiceAttachmentSettingsId\"];\r\n this.invoiceAttachmentSettings = _data[\"invoiceAttachmentSettings\"] ? CompanySettingsInvoiceAttachmentModel.fromJS(_data[\"invoiceAttachmentSettings\"]) : undefined;\r\n if (Array.isArray(_data[\"callbackSettings\"])) {\r\n this.callbackSettings = [] as any;\r\n for (let item of _data[\"callbackSettings\"])\r\n this.callbackSettings!.push(CompanySettingsCallback.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"autoCompletionTemplates\"])) {\r\n this.autoCompletionTemplates = [] as any;\r\n for (let item of _data[\"autoCompletionTemplates\"])\r\n this.autoCompletionTemplates!.push(AutoCompletionTemplate.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): CompanyModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new CompanyModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"callbackUrl\"] = this.callbackUrl;\r\n data[\"handleWarrantMove\"] = this.handleWarrantMove;\r\n data[\"handleWarrantMoveReplies\"] = this.handleWarrantMoveReplies;\r\n data[\"handleWarrantNetOwnerReplies\"] = this.handleWarrantNetOwnerReplies;\r\n data[\"handleWarrantNetOwner\"] = this.handleWarrantNetOwner;\r\n data[\"handleWarrantSupplierReplies\"] = this.handleWarrantSupplierReplies;\r\n data[\"autoSendWarrantMail\"] = this.autoSendWarrantMail;\r\n data[\"autoStartChangeProcessOnNewDeliveries\"] = this.autoStartChangeProcessOnNewDeliveries;\r\n data[\"autoStartChangeProcessMinDaysUntilStart\"] = this.autoStartChangeProcessMinDaysUntilStart;\r\n data[\"autoStartChangeProcessMaxDaysUntilStart\"] = this.autoStartChangeProcessMaxDaysUntilStart;\r\n data[\"autoStartChangeProcessMinDaysAfterSales\"] = this.autoStartChangeProcessMinDaysAfterSales;\r\n data[\"handleWarrantSupplier\"] = this.handleWarrantSupplier;\r\n data[\"warrantMail\"] = this.warrantMail;\r\n data[\"warrantChangedStartDateMail\"] = this.warrantChangedStartDateMail;\r\n data[\"warrantSender\"] = this.warrantSender;\r\n data[\"warrantCompanyName\"] = this.warrantCompanyName;\r\n data[\"warrantCompanyLegalName\"] = this.warrantCompanyLegalName;\r\n data[\"warrantNetOwnerTemplateId\"] = this.warrantNetOwnerTemplateId;\r\n data[\"warrantMoveTemplateId\"] = this.warrantMoveTemplateId;\r\n data[\"warrantChangedStartDateTemplateId\"] = this.warrantChangedStartDateTemplateId;\r\n data[\"warrantSupplierTemplateId\"] = this.warrantSupplierTemplateId;\r\n data[\"warrantDailyRemainderTemplateId\"] = this.warrantDailyRemainderTemplateId;\r\n data[\"genericMailTemplateId\"] = this.genericMailTemplateId;\r\n data[\"useCompletionFlow\"] = this.useCompletionFlow;\r\n data[\"completionUrl\"] = this.completionUrl;\r\n data[\"sendSmsFrom\"] = this.sendSmsFrom;\r\n data[\"sendDeliveryStartSMS\"] = this.sendDeliveryStartSMS;\r\n data[\"sendDeliveryHasStartedSMS\"] = this.sendDeliveryHasStartedSMS;\r\n data[\"sendConfirmationSMS\"] = this.sendConfirmationSMS;\r\n data[\"sendElavtalsServiceSMS\"] = this.sendElavtalsServiceSMS;\r\n data[\"sendConfirmationEmail\"] = this.sendConfirmationEmail;\r\n data[\"standardConfirmationMailTemplateId\"] = this.standardConfirmationMailTemplateId;\r\n data[\"sendMailFromAdress\"] = this.sendMailFromAdress;\r\n data[\"sendMailFromName\"] = this.sendMailFromName;\r\n data[\"useEdiel\"] = this.useEdiel;\r\n data[\"edielId\"] = this.edielId;\r\n data[\"useEdiEncryption\"] = this.useEdiEncryption;\r\n data[\"balanceResponsibleEdielId\"] = this.balanceResponsibleEdielId;\r\n data[\"getActorinfoWhenPropertyCreated\"] = this.getActorinfoWhenPropertyCreated;\r\n data[\"minimumAmountToCreateInvoice\"] = this.minimumAmountToCreateInvoice;\r\n data[\"useAutomaticCompletion\"] = this.useAutomaticCompletion;\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"legalName\"] = this.legalName;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"billogramSettings\"] = this.billogramSettings ? this.billogramSettings.toJSON() : undefined;\r\n data[\"communicationSettings\"] = this.communicationSettings ? this.communicationSettings.toJSON() : undefined;\r\n data[\"invoicingSettings\"] = this.invoicingSettings ? this.invoicingSettings.toJSON() : undefined;\r\n data[\"invoiceAttachmentSettingsId\"] = this.invoiceAttachmentSettingsId;\r\n data[\"invoiceAttachmentSettings\"] = this.invoiceAttachmentSettings ? this.invoiceAttachmentSettings.toJSON() : undefined;\r\n if (Array.isArray(this.callbackSettings)) {\r\n data[\"callbackSettings\"] = [];\r\n for (let item of this.callbackSettings)\r\n data[\"callbackSettings\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.autoCompletionTemplates)) {\r\n data[\"autoCompletionTemplates\"] = [];\r\n for (let item of this.autoCompletionTemplates)\r\n data[\"autoCompletionTemplates\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICompanyModel {\r\n callbackUrl?: string | undefined;\r\n handleWarrantMove?: boolean;\r\n handleWarrantMoveReplies?: boolean;\r\n handleWarrantNetOwnerReplies?: boolean;\r\n handleWarrantNetOwner?: boolean;\r\n handleWarrantSupplierReplies?: boolean;\r\n autoSendWarrantMail?: boolean;\r\n autoStartChangeProcessOnNewDeliveries?: boolean;\r\n autoStartChangeProcessMinDaysUntilStart?: number | undefined;\r\n autoStartChangeProcessMaxDaysUntilStart?: number | undefined;\r\n autoStartChangeProcessMinDaysAfterSales?: number | undefined;\r\n handleWarrantSupplier?: boolean;\r\n warrantMail?: string | undefined;\r\n warrantChangedStartDateMail?: string | undefined;\r\n warrantSender?: string | undefined;\r\n warrantCompanyName?: string | undefined;\r\n warrantCompanyLegalName?: string | undefined;\r\n warrantNetOwnerTemplateId?: string | undefined;\r\n warrantMoveTemplateId?: string | undefined;\r\n warrantChangedStartDateTemplateId?: string | undefined;\r\n warrantSupplierTemplateId?: string | undefined;\r\n warrantDailyRemainderTemplateId?: string | undefined;\r\n genericMailTemplateId?: string | undefined;\r\n useCompletionFlow?: boolean;\r\n completionUrl?: string | undefined;\r\n sendSmsFrom?: string | undefined;\r\n sendDeliveryStartSMS?: boolean;\r\n sendDeliveryHasStartedSMS?: boolean;\r\n sendConfirmationSMS?: boolean;\r\n sendElavtalsServiceSMS?: boolean;\r\n sendConfirmationEmail?: boolean;\r\n standardConfirmationMailTemplateId?: string | undefined;\r\n sendMailFromAdress?: string | undefined;\r\n sendMailFromName?: string | undefined;\r\n useEdiel?: boolean;\r\n edielId?: string | undefined;\r\n useEdiEncryption?: boolean;\r\n balanceResponsibleEdielId?: string | undefined;\r\n getActorinfoWhenPropertyCreated?: boolean;\r\n minimumAmountToCreateInvoice?: number;\r\n useAutomaticCompletion?: boolean;\r\n id?: string;\r\n name?: string | undefined;\r\n legalName?: string | undefined;\r\n companyId?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdBy?: string;\r\n billogramSettings?: CompanySettingsBillogramModel;\r\n communicationSettings: CompanySettingsCommunicationModel;\r\n invoicingSettings: CompanySettingsInvoicing;\r\n invoiceAttachmentSettingsId?: string | undefined;\r\n invoiceAttachmentSettings?: CompanySettingsInvoiceAttachmentModel;\r\n callbackSettings?: CompanySettingsCallback[] | undefined;\r\n autoCompletionTemplates?: AutoCompletionTemplate[] | undefined;\r\n}\r\n\r\nexport enum EAHousing {\r\n APARTMENT = \"APARTMENT\",\r\n TERRACED = \"TERRACED\",\r\n HOUSE = \"HOUSE\",\r\n APPARTMENT = \"APPARTMENT\",\r\n}\r\n\r\nexport class Meter implements IMeter {\r\n id?: string;\r\n externalMeterId?: string | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n\r\n constructor(data?: IMeter) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.externalMeterId = _data[\"externalMeterId\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): Meter {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Meter();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"externalMeterId\"] = this.externalMeterId;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMeter {\r\n id?: string;\r\n externalMeterId?: string | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n}\r\n\r\nexport enum Quality {\r\n OK = \"OK\",\r\n ESTIMATED = \"ESTIMATED\",\r\n CALCULATED = \"CALCULATED\",\r\n}\r\n\r\nexport class InvoiceDatakWhModel implements IInvoiceDatakWhModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n invoiceConsumption?: InvoiceConsumptionModel;\r\n invoiceConsumptionId?: string | undefined;\r\n originalInvoiceConsumptionId?: string | undefined;\r\n priceKWh?: PriceKWh;\r\n supplementCharge?: number;\r\n\r\n constructor(data?: IInvoiceDatakWhModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.invoiceDataId = _data[\"invoiceDataId\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.contract = _data[\"contract\"] ? Contract.fromJS(_data[\"contract\"]) : undefined;\r\n this.price = _data[\"price\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.amount = _data[\"amount\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n this.invoiceConsumption = _data[\"invoiceConsumption\"] ? InvoiceConsumptionModel.fromJS(_data[\"invoiceConsumption\"]) : undefined;\r\n this.invoiceConsumptionId = _data[\"invoiceConsumptionId\"];\r\n this.originalInvoiceConsumptionId = _data[\"originalInvoiceConsumptionId\"];\r\n this.priceKWh = _data[\"priceKWh\"] ? PriceKWh.fromJS(_data[\"priceKWh\"]) : undefined;\r\n this.supplementCharge = _data[\"supplementCharge\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDatakWhModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDatakWhModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"invoiceDataId\"] = this.invoiceDataId;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"contract\"] = this.contract ? this.contract.toJSON() : undefined;\r\n data[\"price\"] = this.price;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"amount\"] = this.amount;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n data[\"invoiceConsumption\"] = this.invoiceConsumption ? this.invoiceConsumption.toJSON() : undefined;\r\n data[\"invoiceConsumptionId\"] = this.invoiceConsumptionId;\r\n data[\"originalInvoiceConsumptionId\"] = this.originalInvoiceConsumptionId;\r\n data[\"priceKWh\"] = this.priceKWh ? this.priceKWh.toJSON() : undefined;\r\n data[\"supplementCharge\"] = this.supplementCharge;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceDatakWhModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n invoiceConsumption?: InvoiceConsumptionModel;\r\n invoiceConsumptionId?: string | undefined;\r\n originalInvoiceConsumptionId?: string | undefined;\r\n priceKWh?: PriceKWh;\r\n supplementCharge?: number;\r\n}\r\n\r\nexport enum InvoiceConsumptionInstallationStatus {\r\n OPEN = \"OPEN\",\r\n CLOSED = \"CLOSED\",\r\n PARTIALLY_CLOSED = \"PARTIALLY_CLOSED\",\r\n}\r\n\r\nexport class InvoiceConsumptionModel implements IInvoiceConsumptionModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n quality?: Quality;\r\n endingConsumption?: boolean;\r\n archived?: boolean;\r\n isBilled?: boolean;\r\n isZeroCorrection?: boolean;\r\n invoiceDatas?: InvoiceDatakWhModel[] | undefined;\r\n propertyId?: string | undefined;\r\n property?: PropertyModel;\r\n meterId?: string | undefined;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n installationStatus?: InvoiceConsumptionInstallationStatus;\r\n daysWithConsumption?: number;\r\n latestPeriodQuantityCreated?: moment.Moment | undefined;\r\n\r\n constructor(data?: IInvoiceConsumptionModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.quantity = _data[\"quantity\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.quality = _data[\"quality\"];\r\n this.endingConsumption = _data[\"endingConsumption\"];\r\n this.archived = _data[\"archived\"];\r\n this.isBilled = _data[\"isBilled\"];\r\n this.isZeroCorrection = _data[\"isZeroCorrection\"];\r\n if (Array.isArray(_data[\"invoiceDatas\"])) {\r\n this.invoiceDatas = [] as any;\r\n for (let item of _data[\"invoiceDatas\"])\r\n this.invoiceDatas!.push(InvoiceDatakWhModel.fromJS(item));\r\n }\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n this.meterId = _data[\"meterId\"];\r\n this.elavtalId = _data[\"elavtalId\"];\r\n this.elavtal = _data[\"elavtal\"] ? Elavtal.fromJS(_data[\"elavtal\"]) : undefined;\r\n this.installationStatus = _data[\"installationStatus\"];\r\n this.daysWithConsumption = _data[\"daysWithConsumption\"];\r\n this.latestPeriodQuantityCreated = _data[\"latestPeriodQuantityCreated\"] ? moment(_data[\"latestPeriodQuantityCreated\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceConsumptionModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceConsumptionModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"quality\"] = this.quality;\r\n data[\"endingConsumption\"] = this.endingConsumption;\r\n data[\"archived\"] = this.archived;\r\n data[\"isBilled\"] = this.isBilled;\r\n data[\"isZeroCorrection\"] = this.isZeroCorrection;\r\n if (Array.isArray(this.invoiceDatas)) {\r\n data[\"invoiceDatas\"] = [];\r\n for (let item of this.invoiceDatas)\r\n data[\"invoiceDatas\"].push(item.toJSON());\r\n }\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n data[\"meterId\"] = this.meterId;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n data[\"elavtal\"] = this.elavtal ? this.elavtal.toJSON() : undefined;\r\n data[\"installationStatus\"] = this.installationStatus;\r\n data[\"daysWithConsumption\"] = this.daysWithConsumption;\r\n data[\"latestPeriodQuantityCreated\"] = this.latestPeriodQuantityCreated ? this.latestPeriodQuantityCreated.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceConsumptionModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n quality?: Quality;\r\n endingConsumption?: boolean;\r\n archived?: boolean;\r\n isBilled?: boolean;\r\n isZeroCorrection?: boolean;\r\n invoiceDatas?: InvoiceDatakWhModel[] | undefined;\r\n propertyId?: string | undefined;\r\n property?: PropertyModel;\r\n meterId?: string | undefined;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n installationStatus?: InvoiceConsumptionInstallationStatus;\r\n daysWithConsumption?: number;\r\n latestPeriodQuantityCreated?: moment.Moment | undefined;\r\n}\r\n\r\nexport enum MeasureQuality {\r\n OK = \"OK\",\r\n Temporary = \"Temporary\",\r\n Non_existent = \"Non_existent\",\r\n Estimated = \"Estimated\",\r\n Incomplete = \"Incomplete\",\r\n Adjusted = \"Adjusted\",\r\n SystemEstimated = \"SystemEstimated\",\r\n Manual = \"Manual\",\r\n}\r\n\r\nexport enum QuantityType {\r\n Consumption = \"Consumption\",\r\n Production = \"Production\",\r\n}\r\n\r\nexport enum Direction {\r\n OUTGOING = \"OUTGOING\",\r\n INCOMING = \"INCOMING\",\r\n}\r\n\r\nexport enum MarketCommunicationErrorCode {\r\n UNKNOWN = \"UNKNOWN\",\r\n SUPPLIER_CHANGE_NOT_FOUND = \"SUPPLIER_CHANGE_NOT_FOUND\",\r\n RETAILER_SWITCH_LOG_NOT_FOUND = \"RETAILER_SWITCH_LOG_NOT_FOUND\",\r\n RECIPIENT_NOT_FOUND = \"RECIPIENT_NOT_FOUND\",\r\n PROPERTY_NOT_FOUND = \"PROPERTY_NOT_FOUND\",\r\n COULD_NOT_CREATE_OBLIGATIONTORECIEVE = \"COULD_NOT_CREATE_OBLIGATIONTORECIEVE\",\r\n FAILED_TO_SEND_CONTRL = \"FAILED_TO_SEND_CONTRL\",\r\n FAILED_TO_SEND_APERAK = \"FAILED_TO_SEND_APERAK\",\r\n UNKNOWN_INTERCHANGE_REFERENCE = \"UNKNOWN_INTERCHANGE_REFERENCE\",\r\n SUPPLIER_CHANGE_LOG_NOT_FOUND = \"SUPPLIER_CHANGE_LOG_NOT_FOUND\",\r\n MULTIPLE_CONTRL_MESSAGES_IN_INTERCHANGE = \"MULTIPLE_CONTRL_MESSAGES_IN_INTERCHANGE\",\r\n UNSUPPORTED_PRODAT_TYPE = \"UNSUPPORTED_PRODAT_TYPE\",\r\n UNSUPPORTED_PRODAT_SUBTYPE = \"UNSUPPORTED_PRODAT_SUBTYPE\",\r\n EDILOGDETAIL_UNHANDLED = \"EDILOGDETAIL_UNHANDLED\",\r\n DELIVERY_NOT_FOUND = \"DELIVERY_NOT_FOUND\",\r\n UNSUPPORTED_MESSAGE_TYPE = \"UNSUPPORTED_MESSAGE_TYPE\",\r\n UNKNOWN_EDIEL_RECIPIENT = \"UNKNOWN_EDIEL_RECIPIENT\",\r\n MULTIPLE_PROPERTIES_FOUND = \"MULTIPLE_PROPERTIES_FOUND\",\r\n UNSUPPORTED_UTILTS_MESSAGE_TYPE = \"UNSUPPORTED_UTILTS_MESSAGE_TYPE\",\r\n UNSUPPORTED_APERAK_MESSAGE_FUNCTION = \"UNSUPPORTED_APERAK_MESSAGE_FUNCTION\",\r\n UNABLE_TO_CREATE_EDIEL_MESSAGE = \"UNABLE_TO_CREATE_EDIEL_MESSAGE\",\r\n DUPLICATE_INTERCHANGE_REFERENCE = \"DUPLICATE_INTERCHANGE_REFERENCE\",\r\n CUSTOMER_NOT_FOUND = \"CUSTOMER_NOT_FOUND\",\r\n ILLEGAL_PROPERTY_TYPE_FOR_OPERATION = \"ILLEGAL_PROPERTY_TYPE_FOR_OPERATION\",\r\n SMTP_COMMUNICATION_FAILURE = \"SMTP_COMMUNICATION_FAILURE\",\r\n}\r\n\r\nexport class EdiLogDetail implements IEdiLogDetail {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n messageSubType?: string | undefined;\r\n referenceId?: string | undefined;\r\n ediLogPostId?: string;\r\n ediLogPost?: EdiLogPost;\r\n propertyId?: string | undefined;\r\n messageAttribute?: string | undefined;\r\n messageId?: string | undefined;\r\n messageDetailId?: string | undefined;\r\n aperakStatus?: boolean | undefined;\r\n utiltsErrStatus?: boolean | undefined;\r\n handled?: boolean;\r\n errorCode?: MarketCommunicationErrorCode;\r\n\r\n constructor(data?: IEdiLogDetail) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.messageSubType = _data[\"messageSubType\"];\r\n this.referenceId = _data[\"referenceId\"];\r\n this.ediLogPostId = _data[\"ediLogPostId\"];\r\n this.ediLogPost = _data[\"ediLogPost\"] ? EdiLogPost.fromJS(_data[\"ediLogPost\"]) : undefined;\r\n this.propertyId = _data[\"propertyId\"];\r\n this.messageAttribute = _data[\"messageAttribute\"];\r\n this.messageId = _data[\"messageId\"];\r\n this.messageDetailId = _data[\"messageDetailId\"];\r\n this.aperakStatus = _data[\"aperakStatus\"];\r\n this.utiltsErrStatus = _data[\"utiltsErrStatus\"];\r\n this.handled = _data[\"handled\"];\r\n this.errorCode = _data[\"errorCode\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EdiLogDetail {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EdiLogDetail();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"messageSubType\"] = this.messageSubType;\r\n data[\"referenceId\"] = this.referenceId;\r\n data[\"ediLogPostId\"] = this.ediLogPostId;\r\n data[\"ediLogPost\"] = this.ediLogPost ? this.ediLogPost.toJSON() : undefined;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"messageAttribute\"] = this.messageAttribute;\r\n data[\"messageId\"] = this.messageId;\r\n data[\"messageDetailId\"] = this.messageDetailId;\r\n data[\"aperakStatus\"] = this.aperakStatus;\r\n data[\"utiltsErrStatus\"] = this.utiltsErrStatus;\r\n data[\"handled\"] = this.handled;\r\n data[\"errorCode\"] = this.errorCode;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEdiLogDetail {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n messageSubType?: string | undefined;\r\n referenceId?: string | undefined;\r\n ediLogPostId?: string;\r\n ediLogPost?: EdiLogPost;\r\n propertyId?: string | undefined;\r\n messageAttribute?: string | undefined;\r\n messageId?: string | undefined;\r\n messageDetailId?: string | undefined;\r\n aperakStatus?: boolean | undefined;\r\n utiltsErrStatus?: boolean | undefined;\r\n handled?: boolean;\r\n errorCode?: MarketCommunicationErrorCode;\r\n}\r\n\r\nexport class EdiLogPost implements IEdiLogPost {\r\n id?: string;\r\n logged?: moment.Moment;\r\n direction?: Direction;\r\n dateOfPreparation?: string | undefined;\r\n timeOfPreparation?: string | undefined;\r\n interchangeReference?: string | undefined;\r\n messageType?: string | undefined;\r\n senderId?: string | undefined;\r\n senderEmailAddress?: string | undefined;\r\n recipientId?: string | undefined;\r\n recipientEmailAddress?: string | undefined;\r\n fileName?: string | undefined;\r\n message?: string | undefined;\r\n handled?: boolean;\r\n errorCode?: MarketCommunicationErrorCode;\r\n controlStatus?: boolean | undefined;\r\n messageSubType?: string | undefined;\r\n periodQuantitiesPlanned?: PeriodQuantityPlannedModel[] | undefined;\r\n details?: EdiLogDetail[] | undefined;\r\n\r\n constructor(data?: IEdiLogPost) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.logged = _data[\"logged\"] ? moment(_data[\"logged\"].toString()) : undefined;\r\n this.direction = _data[\"direction\"];\r\n this.dateOfPreparation = _data[\"dateOfPreparation\"];\r\n this.timeOfPreparation = _data[\"timeOfPreparation\"];\r\n this.interchangeReference = _data[\"interchangeReference\"];\r\n this.messageType = _data[\"messageType\"];\r\n this.senderId = _data[\"senderId\"];\r\n this.senderEmailAddress = _data[\"senderEmailAddress\"];\r\n this.recipientId = _data[\"recipientId\"];\r\n this.recipientEmailAddress = _data[\"recipientEmailAddress\"];\r\n this.fileName = _data[\"fileName\"];\r\n this.message = _data[\"message\"];\r\n this.handled = _data[\"handled\"];\r\n this.errorCode = _data[\"errorCode\"];\r\n this.controlStatus = _data[\"controlStatus\"];\r\n this.messageSubType = _data[\"messageSubType\"];\r\n if (Array.isArray(_data[\"periodQuantitiesPlanned\"])) {\r\n this.periodQuantitiesPlanned = [] as any;\r\n for (let item of _data[\"periodQuantitiesPlanned\"])\r\n this.periodQuantitiesPlanned!.push(PeriodQuantityPlannedModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"details\"])) {\r\n this.details = [] as any;\r\n for (let item of _data[\"details\"])\r\n this.details!.push(EdiLogDetail.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): EdiLogPost {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EdiLogPost();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"logged\"] = this.logged ? this.logged.toISOString() : undefined;\r\n data[\"direction\"] = this.direction;\r\n data[\"dateOfPreparation\"] = this.dateOfPreparation;\r\n data[\"timeOfPreparation\"] = this.timeOfPreparation;\r\n data[\"interchangeReference\"] = this.interchangeReference;\r\n data[\"messageType\"] = this.messageType;\r\n data[\"senderId\"] = this.senderId;\r\n data[\"senderEmailAddress\"] = this.senderEmailAddress;\r\n data[\"recipientId\"] = this.recipientId;\r\n data[\"recipientEmailAddress\"] = this.recipientEmailAddress;\r\n data[\"fileName\"] = this.fileName;\r\n data[\"message\"] = this.message;\r\n data[\"handled\"] = this.handled;\r\n data[\"errorCode\"] = this.errorCode;\r\n data[\"controlStatus\"] = this.controlStatus;\r\n data[\"messageSubType\"] = this.messageSubType;\r\n if (Array.isArray(this.periodQuantitiesPlanned)) {\r\n data[\"periodQuantitiesPlanned\"] = [];\r\n for (let item of this.periodQuantitiesPlanned)\r\n data[\"periodQuantitiesPlanned\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.details)) {\r\n data[\"details\"] = [];\r\n for (let item of this.details)\r\n data[\"details\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEdiLogPost {\r\n id?: string;\r\n logged?: moment.Moment;\r\n direction?: Direction;\r\n dateOfPreparation?: string | undefined;\r\n timeOfPreparation?: string | undefined;\r\n interchangeReference?: string | undefined;\r\n messageType?: string | undefined;\r\n senderId?: string | undefined;\r\n senderEmailAddress?: string | undefined;\r\n recipientId?: string | undefined;\r\n recipientEmailAddress?: string | undefined;\r\n fileName?: string | undefined;\r\n message?: string | undefined;\r\n handled?: boolean;\r\n errorCode?: MarketCommunicationErrorCode;\r\n controlStatus?: boolean | undefined;\r\n messageSubType?: string | undefined;\r\n periodQuantitiesPlanned?: PeriodQuantityPlannedModel[] | undefined;\r\n details?: EdiLogDetail[] | undefined;\r\n}\r\n\r\nexport class PeriodQuantityPlannedModel implements IPeriodQuantityPlannedModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n periodStartTime?: moment.Moment;\r\n periodEndTime?: moment.Moment;\r\n resolution?: string | undefined;\r\n unit?: string | undefined;\r\n quantity?: number;\r\n quality?: MeasureQuality;\r\n type?: QuantityType;\r\n transactionReference?: string | undefined;\r\n propertyId?: string | undefined;\r\n property?: PropertyModel;\r\n ediLogPostId?: string | undefined;\r\n ediLog?: EdiLogPost;\r\n\r\n constructor(data?: IPeriodQuantityPlannedModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.periodStartTime = _data[\"periodStartTime\"] ? moment(_data[\"periodStartTime\"].toString()) : undefined;\r\n this.periodEndTime = _data[\"periodEndTime\"] ? moment(_data[\"periodEndTime\"].toString()) : undefined;\r\n this.resolution = _data[\"resolution\"];\r\n this.unit = _data[\"unit\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.quality = _data[\"quality\"];\r\n this.type = _data[\"type\"];\r\n this.transactionReference = _data[\"transactionReference\"];\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n this.ediLogPostId = _data[\"ediLogPostId\"];\r\n this.ediLog = _data[\"ediLog\"] ? EdiLogPost.fromJS(_data[\"ediLog\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PeriodQuantityPlannedModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PeriodQuantityPlannedModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"periodStartTime\"] = this.periodStartTime ? this.periodStartTime.toISOString() : undefined;\r\n data[\"periodEndTime\"] = this.periodEndTime ? this.periodEndTime.toISOString() : undefined;\r\n data[\"resolution\"] = this.resolution;\r\n data[\"unit\"] = this.unit;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"quality\"] = this.quality;\r\n data[\"type\"] = this.type;\r\n data[\"transactionReference\"] = this.transactionReference;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n data[\"ediLogPostId\"] = this.ediLogPostId;\r\n data[\"ediLog\"] = this.ediLog ? this.ediLog.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPeriodQuantityPlannedModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n periodStartTime?: moment.Moment;\r\n periodEndTime?: moment.Moment;\r\n resolution?: string | undefined;\r\n unit?: string | undefined;\r\n quantity?: number;\r\n quality?: MeasureQuality;\r\n type?: QuantityType;\r\n transactionReference?: string | undefined;\r\n propertyId?: string | undefined;\r\n property?: PropertyModel;\r\n ediLogPostId?: string | undefined;\r\n ediLog?: EdiLogPost;\r\n}\r\n\r\nexport enum MeasureMethod {\r\n UNKNOWN = \"UNKNOWN\",\r\n PROFILE = \"PROFILE\",\r\n HOUR = \"HOUR\",\r\n DEFINED_BY_METERING_POINT_ADMIN = \"DEFINED_BY_METERING_POINT_ADMIN\",\r\n FIFTEEN_MINUTES = \"FIFTEEN_MINUTES\",\r\n}\r\n\r\nexport enum ObservationLength {\r\n UNKNOWN = \"UNKNOWN\",\r\n FIFTEEN_MINUTES = \"FIFTEEN_MINUTES\",\r\n ONE_HOUR = \"ONE_HOUR\",\r\n ONE_MONTH = \"ONE_MONTH\",\r\n ONE_YEAR = \"ONE_YEAR\",\r\n}\r\n\r\nexport enum SettlementMethod {\r\n UNKNOWN = \"UNKNOWN\",\r\n PROFILED_SETTLEMENT = \"PROFILED_SETTLEMENT\",\r\n HOURLY_BASED_SETTLEMENT = \"HOURLY_BASED_SETTLEMENT\",\r\n}\r\n\r\nexport enum InstallationStatus {\r\n UNKNOWN = \"UNKNOWN\",\r\n CLOSED = \"CLOSED\",\r\n OPEN = \"OPEN\",\r\n}\r\n\r\nexport enum MeterReadingFrequency {\r\n UNKNOWN = \"UNKNOWN\",\r\n DAILY = \"DAILY\",\r\n WEEKLY = \"WEEKLY\",\r\n MONTHLY = \"MONTHLY\",\r\n QUARTERLY = \"QUARTERLY\",\r\n}\r\n\r\nexport enum MeterInfoOrigin {\r\n NET_OWNER = \"NET_OWNER\",\r\n MANUAL = \"MANUAL\",\r\n}\r\n\r\nexport class MeterInfoModel implements IMeterInfoModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n timeStamp?: moment.Moment;\r\n lineItemReference?: string | undefined;\r\n meterNumber?: string | undefined;\r\n meterTimeframe?: string | undefined;\r\n productCode?: string | undefined;\r\n constant?: number;\r\n measureMethod?: MeasureMethod;\r\n observationLength?: ObservationLength;\r\n settlementMethod?: SettlementMethod;\r\n numberOfDigits?: number;\r\n status?: InstallationStatus;\r\n readingFrequency?: MeterReadingFrequency;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n origin?: MeterInfoOrigin;\r\n\r\n constructor(data?: IMeterInfoModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.timeStamp = _data[\"timeStamp\"] ? moment(_data[\"timeStamp\"].toString()) : undefined;\r\n this.lineItemReference = _data[\"lineItemReference\"];\r\n this.meterNumber = _data[\"meterNumber\"];\r\n this.meterTimeframe = _data[\"meterTimeframe\"];\r\n this.productCode = _data[\"productCode\"];\r\n this.constant = _data[\"constant\"];\r\n this.measureMethod = _data[\"measureMethod\"];\r\n this.observationLength = _data[\"observationLength\"];\r\n this.settlementMethod = _data[\"settlementMethod\"];\r\n this.numberOfDigits = _data[\"numberOfDigits\"];\r\n this.status = _data[\"status\"];\r\n this.readingFrequency = _data[\"readingFrequency\"];\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n this.origin = _data[\"origin\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MeterInfoModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MeterInfoModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"timeStamp\"] = this.timeStamp ? this.timeStamp.toISOString() : undefined;\r\n data[\"lineItemReference\"] = this.lineItemReference;\r\n data[\"meterNumber\"] = this.meterNumber;\r\n data[\"meterTimeframe\"] = this.meterTimeframe;\r\n data[\"productCode\"] = this.productCode;\r\n data[\"constant\"] = this.constant;\r\n data[\"measureMethod\"] = this.measureMethod;\r\n data[\"observationLength\"] = this.observationLength;\r\n data[\"settlementMethod\"] = this.settlementMethod;\r\n data[\"numberOfDigits\"] = this.numberOfDigits;\r\n data[\"status\"] = this.status;\r\n data[\"readingFrequency\"] = this.readingFrequency;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n data[\"origin\"] = this.origin;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMeterInfoModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n timeStamp?: moment.Moment;\r\n lineItemReference?: string | undefined;\r\n meterNumber?: string | undefined;\r\n meterTimeframe?: string | undefined;\r\n productCode?: string | undefined;\r\n constant?: number;\r\n measureMethod?: MeasureMethod;\r\n observationLength?: ObservationLength;\r\n settlementMethod?: SettlementMethod;\r\n numberOfDigits?: number;\r\n status?: InstallationStatus;\r\n readingFrequency?: MeterReadingFrequency;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n origin?: MeterInfoOrigin;\r\n}\r\n\r\nexport enum PropertyEventType {\r\n UNDEFINED = \"UNDEFINED\",\r\n METER_OPENED = \"METER_OPENED\",\r\n METER_CLOSED = \"METER_CLOSED\",\r\n METER_CHANGED = \"METER_CHANGED\",\r\n METERINFO_UPDATED = \"METERINFO_UPDATED\",\r\n PROPERTY_ADDRESS_UPDATED = \"PROPERTY_ADDRESS_UPDATED\",\r\n MEASURING_METHOD_UPDATED = \"MEASURING_METHOD_UPDATED\",\r\n SETTLEMENT_METHOD_UPDATED = \"SETTLEMENT_METHOD_UPDATED\",\r\n}\r\n\r\nexport class PropertyEventModel implements IPropertyEventModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n eventType?: PropertyEventType;\r\n timestamp?: moment.Moment;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n\r\n constructor(data?: IPropertyEventModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.eventType = _data[\"eventType\"];\r\n this.timestamp = _data[\"timestamp\"] ? moment(_data[\"timestamp\"].toString()) : undefined;\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PropertyEventModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PropertyEventModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"eventType\"] = this.eventType;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPropertyEventModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n eventType?: PropertyEventType;\r\n timestamp?: moment.Moment;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n}\r\n\r\nexport class MissingPeriodModel implements IMissingPeriodModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n propertyId?: string;\r\n startTime?: moment.Moment;\r\n endTime?: moment.Moment;\r\n\r\n constructor(data?: IMissingPeriodModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.propertyId = _data[\"propertyId\"];\r\n this.startTime = _data[\"startTime\"] ? moment(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? moment(_data[\"endTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): MissingPeriodModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MissingPeriodModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMissingPeriodModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n propertyId?: string;\r\n startTime?: moment.Moment;\r\n endTime?: moment.Moment;\r\n}\r\n\r\nexport enum PropertyStatus {\r\n DRAFT = \"DRAFT\",\r\n CONFIRMED = \"CONFIRMED\",\r\n ARCHIVED = \"ARCHIVED\",\r\n}\r\n\r\nexport enum NetActorType {\r\n NetOwner = \"NetOwner\",\r\n Supplier = \"Supplier\",\r\n}\r\n\r\nexport class NetOwner implements INetOwner {\r\n type?: NetActorType;\r\n phoneNumberCustomerSupportMove?: string | undefined;\r\n id?: string;\r\n name?: string | undefined;\r\n edielId?: string | undefined;\r\n prodatCommunicationAddress?: string | undefined;\r\n prodatSubAddress?: string | undefined;\r\n prodatInterchangePartyId?: string | undefined;\r\n utiltsCommunicationAddress?: string | undefined;\r\n utiltsSubAddress?: string | undefined;\r\n utiltsInterchangePartyId?: string | undefined;\r\n warrantEmail?: string | undefined;\r\n warrantEmailManual?: string | undefined;\r\n phoneNumberCustomerSupport?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n digitalIdRequired?: boolean | undefined;\r\n\r\n constructor(data?: INetOwner) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.type = _data[\"type\"];\r\n this.phoneNumberCustomerSupportMove = _data[\"phoneNumberCustomerSupportMove\"];\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.edielId = _data[\"edielId\"];\r\n this.prodatCommunicationAddress = _data[\"prodatCommunicationAddress\"];\r\n this.prodatSubAddress = _data[\"prodatSubAddress\"];\r\n this.prodatInterchangePartyId = _data[\"prodatInterchangePartyId\"];\r\n this.utiltsCommunicationAddress = _data[\"utiltsCommunicationAddress\"];\r\n this.utiltsSubAddress = _data[\"utiltsSubAddress\"];\r\n this.utiltsInterchangePartyId = _data[\"utiltsInterchangePartyId\"];\r\n this.warrantEmail = _data[\"warrantEmail\"];\r\n this.warrantEmailManual = _data[\"warrantEmailManual\"];\r\n this.phoneNumberCustomerSupport = _data[\"phoneNumberCustomerSupport\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.digitalIdRequired = _data[\"digitalIdRequired\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NetOwner {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NetOwner();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"type\"] = this.type;\r\n data[\"phoneNumberCustomerSupportMove\"] = this.phoneNumberCustomerSupportMove;\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"edielId\"] = this.edielId;\r\n data[\"prodatCommunicationAddress\"] = this.prodatCommunicationAddress;\r\n data[\"prodatSubAddress\"] = this.prodatSubAddress;\r\n data[\"prodatInterchangePartyId\"] = this.prodatInterchangePartyId;\r\n data[\"utiltsCommunicationAddress\"] = this.utiltsCommunicationAddress;\r\n data[\"utiltsSubAddress\"] = this.utiltsSubAddress;\r\n data[\"utiltsInterchangePartyId\"] = this.utiltsInterchangePartyId;\r\n data[\"warrantEmail\"] = this.warrantEmail;\r\n data[\"warrantEmailManual\"] = this.warrantEmailManual;\r\n data[\"phoneNumberCustomerSupport\"] = this.phoneNumberCustomerSupport;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"digitalIdRequired\"] = this.digitalIdRequired;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INetOwner {\r\n type?: NetActorType;\r\n phoneNumberCustomerSupportMove?: string | undefined;\r\n id?: string;\r\n name?: string | undefined;\r\n edielId?: string | undefined;\r\n prodatCommunicationAddress?: string | undefined;\r\n prodatSubAddress?: string | undefined;\r\n prodatInterchangePartyId?: string | undefined;\r\n utiltsCommunicationAddress?: string | undefined;\r\n utiltsSubAddress?: string | undefined;\r\n utiltsInterchangePartyId?: string | undefined;\r\n warrantEmail?: string | undefined;\r\n warrantEmailManual?: string | undefined;\r\n phoneNumberCustomerSupport?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n digitalIdRequired?: boolean | undefined;\r\n}\r\n\r\nexport class AggregatedQuantityModel implements IAggregatedQuantityModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n planned?: boolean;\r\n periodStartTime?: moment.Moment;\r\n periodEndTime?: moment.Moment;\r\n resolution?: string | undefined;\r\n unit?: string | undefined;\r\n quantity?: number;\r\n type?: QuantityType;\r\n transactionReference?: string | undefined;\r\n numberOfMeasuringPoints?: number;\r\n productCharacteristic?: string | undefined;\r\n productType?: string | undefined;\r\n identityType?: string | undefined;\r\n levelOfDetails?: string | undefined;\r\n businessActivityPhase?: string | undefined;\r\n netAreaId?: string | undefined;\r\n netArea?: NetArea;\r\n ediLogPostId?: string | undefined;\r\n ediLog?: EdiLogPost;\r\n\r\n constructor(data?: IAggregatedQuantityModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.planned = _data[\"planned\"];\r\n this.periodStartTime = _data[\"periodStartTime\"] ? moment(_data[\"periodStartTime\"].toString()) : undefined;\r\n this.periodEndTime = _data[\"periodEndTime\"] ? moment(_data[\"periodEndTime\"].toString()) : undefined;\r\n this.resolution = _data[\"resolution\"];\r\n this.unit = _data[\"unit\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.type = _data[\"type\"];\r\n this.transactionReference = _data[\"transactionReference\"];\r\n this.numberOfMeasuringPoints = _data[\"numberOfMeasuringPoints\"];\r\n this.productCharacteristic = _data[\"productCharacteristic\"];\r\n this.productType = _data[\"productType\"];\r\n this.identityType = _data[\"identityType\"];\r\n this.levelOfDetails = _data[\"levelOfDetails\"];\r\n this.businessActivityPhase = _data[\"businessActivityPhase\"];\r\n this.netAreaId = _data[\"netAreaId\"];\r\n this.netArea = _data[\"netArea\"] ? NetArea.fromJS(_data[\"netArea\"]) : undefined;\r\n this.ediLogPostId = _data[\"ediLogPostId\"];\r\n this.ediLog = _data[\"ediLog\"] ? EdiLogPost.fromJS(_data[\"ediLog\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AggregatedQuantityModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AggregatedQuantityModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"planned\"] = this.planned;\r\n data[\"periodStartTime\"] = this.periodStartTime ? this.periodStartTime.toISOString() : undefined;\r\n data[\"periodEndTime\"] = this.periodEndTime ? this.periodEndTime.toISOString() : undefined;\r\n data[\"resolution\"] = this.resolution;\r\n data[\"unit\"] = this.unit;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"type\"] = this.type;\r\n data[\"transactionReference\"] = this.transactionReference;\r\n data[\"numberOfMeasuringPoints\"] = this.numberOfMeasuringPoints;\r\n data[\"productCharacteristic\"] = this.productCharacteristic;\r\n data[\"productType\"] = this.productType;\r\n data[\"identityType\"] = this.identityType;\r\n data[\"levelOfDetails\"] = this.levelOfDetails;\r\n data[\"businessActivityPhase\"] = this.businessActivityPhase;\r\n data[\"netAreaId\"] = this.netAreaId;\r\n data[\"netArea\"] = this.netArea ? this.netArea.toJSON() : undefined;\r\n data[\"ediLogPostId\"] = this.ediLogPostId;\r\n data[\"ediLog\"] = this.ediLog ? this.ediLog.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAggregatedQuantityModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n planned?: boolean;\r\n periodStartTime?: moment.Moment;\r\n periodEndTime?: moment.Moment;\r\n resolution?: string | undefined;\r\n unit?: string | undefined;\r\n quantity?: number;\r\n type?: QuantityType;\r\n transactionReference?: string | undefined;\r\n numberOfMeasuringPoints?: number;\r\n productCharacteristic?: string | undefined;\r\n productType?: string | undefined;\r\n identityType?: string | undefined;\r\n levelOfDetails?: string | undefined;\r\n businessActivityPhase?: string | undefined;\r\n netAreaId?: string | undefined;\r\n netArea?: NetArea;\r\n ediLogPostId?: string | undefined;\r\n ediLog?: EdiLogPost;\r\n}\r\n\r\nexport class NetArea implements INetArea {\r\n id?: string;\r\n name?: string | undefined;\r\n code?: string | undefined;\r\n electricityArea?: number;\r\n netOwnerId?: string;\r\n netOwner?: NetOwner;\r\n aggregatedQuantities?: AggregatedQuantityModel[] | undefined;\r\n\r\n constructor(data?: INetArea) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.code = _data[\"code\"];\r\n this.electricityArea = _data[\"electricityArea\"];\r\n this.netOwnerId = _data[\"netOwnerId\"];\r\n this.netOwner = _data[\"netOwner\"] ? NetOwner.fromJS(_data[\"netOwner\"]) : undefined;\r\n if (Array.isArray(_data[\"aggregatedQuantities\"])) {\r\n this.aggregatedQuantities = [] as any;\r\n for (let item of _data[\"aggregatedQuantities\"])\r\n this.aggregatedQuantities!.push(AggregatedQuantityModel.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): NetArea {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NetArea();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"code\"] = this.code;\r\n data[\"electricityArea\"] = this.electricityArea;\r\n data[\"netOwnerId\"] = this.netOwnerId;\r\n data[\"netOwner\"] = this.netOwner ? this.netOwner.toJSON() : undefined;\r\n if (Array.isArray(this.aggregatedQuantities)) {\r\n data[\"aggregatedQuantities\"] = [];\r\n for (let item of this.aggregatedQuantities)\r\n data[\"aggregatedQuantities\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INetArea {\r\n id?: string;\r\n name?: string | undefined;\r\n code?: string | undefined;\r\n electricityArea?: number;\r\n netOwnerId?: string;\r\n netOwner?: NetOwner;\r\n aggregatedQuantities?: AggregatedQuantityModel[] | undefined;\r\n}\r\n\r\nexport class PropertyModel implements IPropertyModel {\r\n ean?: string | undefined;\r\n street?: string | undefined;\r\n publicStreet?: string | undefined;\r\n lmvNumber?: string | undefined;\r\n internalPropertyNumber?: string | undefined;\r\n propertyOwner?: string | undefined;\r\n housingCooperative?: string | undefined;\r\n area?: number;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n consumption?: number;\r\n housing?: EAHousing;\r\n netAreaId?: string | undefined;\r\n meter?: Meter[] | undefined;\r\n invoiceConsumption?: InvoiceConsumptionModel[] | undefined;\r\n periodQuantitiesPlanned?: PeriodQuantityPlannedModel[] | undefined;\r\n meterInfo?: MeterInfoModel[] | undefined;\r\n propertyEvents?: PropertyEventModel[] | undefined;\r\n missingPeriods?: MissingPeriodModel[] | undefined;\r\n hasMissingQuantities?: boolean;\r\n lastCheckedForMissingQuantities?: moment.Moment;\r\n externalId?: string | undefined;\r\n status?: PropertyStatus;\r\n type?: PropertyType;\r\n connectedConsumingPropertyId?: string | undefined;\r\n id?: string;\r\n netArea?: NetArea;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdBy?: string;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n entityType?: string | undefined;\r\n deleted?: boolean;\r\n searchData?: string | undefined;\r\n entityData?: string | undefined;\r\n\r\n constructor(data?: IPropertyModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.ean = _data[\"ean\"];\r\n this.street = _data[\"street\"];\r\n this.publicStreet = _data[\"publicStreet\"];\r\n this.lmvNumber = _data[\"lmvNumber\"];\r\n this.internalPropertyNumber = _data[\"internalPropertyNumber\"];\r\n this.propertyOwner = _data[\"propertyOwner\"];\r\n this.housingCooperative = _data[\"housingCooperative\"];\r\n this.area = _data[\"area\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.housing = _data[\"housing\"];\r\n this.netAreaId = _data[\"netAreaId\"];\r\n if (Array.isArray(_data[\"meter\"])) {\r\n this.meter = [] as any;\r\n for (let item of _data[\"meter\"])\r\n this.meter!.push(Meter.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"invoiceConsumption\"])) {\r\n this.invoiceConsumption = [] as any;\r\n for (let item of _data[\"invoiceConsumption\"])\r\n this.invoiceConsumption!.push(InvoiceConsumptionModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"periodQuantitiesPlanned\"])) {\r\n this.periodQuantitiesPlanned = [] as any;\r\n for (let item of _data[\"periodQuantitiesPlanned\"])\r\n this.periodQuantitiesPlanned!.push(PeriodQuantityPlannedModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"meterInfo\"])) {\r\n this.meterInfo = [] as any;\r\n for (let item of _data[\"meterInfo\"])\r\n this.meterInfo!.push(MeterInfoModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"propertyEvents\"])) {\r\n this.propertyEvents = [] as any;\r\n for (let item of _data[\"propertyEvents\"])\r\n this.propertyEvents!.push(PropertyEventModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"missingPeriods\"])) {\r\n this.missingPeriods = [] as any;\r\n for (let item of _data[\"missingPeriods\"])\r\n this.missingPeriods!.push(MissingPeriodModel.fromJS(item));\r\n }\r\n this.hasMissingQuantities = _data[\"hasMissingQuantities\"];\r\n this.lastCheckedForMissingQuantities = _data[\"lastCheckedForMissingQuantities\"] ? moment(_data[\"lastCheckedForMissingQuantities\"].toString()) : undefined;\r\n this.externalId = _data[\"externalId\"];\r\n this.status = _data[\"status\"];\r\n this.type = _data[\"type\"];\r\n this.connectedConsumingPropertyId = _data[\"connectedConsumingPropertyId\"];\r\n this.id = _data[\"id\"];\r\n this.netArea = _data[\"netArea\"] ? NetArea.fromJS(_data[\"netArea\"]) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.entityType = _data[\"entityType\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.searchData = _data[\"searchData\"];\r\n this.entityData = _data[\"entityData\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PropertyModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PropertyModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"ean\"] = this.ean;\r\n data[\"street\"] = this.street;\r\n data[\"publicStreet\"] = this.publicStreet;\r\n data[\"lmvNumber\"] = this.lmvNumber;\r\n data[\"internalPropertyNumber\"] = this.internalPropertyNumber;\r\n data[\"propertyOwner\"] = this.propertyOwner;\r\n data[\"housingCooperative\"] = this.housingCooperative;\r\n data[\"area\"] = this.area;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"housing\"] = this.housing;\r\n data[\"netAreaId\"] = this.netAreaId;\r\n if (Array.isArray(this.meter)) {\r\n data[\"meter\"] = [];\r\n for (let item of this.meter)\r\n data[\"meter\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.invoiceConsumption)) {\r\n data[\"invoiceConsumption\"] = [];\r\n for (let item of this.invoiceConsumption)\r\n data[\"invoiceConsumption\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.periodQuantitiesPlanned)) {\r\n data[\"periodQuantitiesPlanned\"] = [];\r\n for (let item of this.periodQuantitiesPlanned)\r\n data[\"periodQuantitiesPlanned\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.meterInfo)) {\r\n data[\"meterInfo\"] = [];\r\n for (let item of this.meterInfo)\r\n data[\"meterInfo\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.propertyEvents)) {\r\n data[\"propertyEvents\"] = [];\r\n for (let item of this.propertyEvents)\r\n data[\"propertyEvents\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.missingPeriods)) {\r\n data[\"missingPeriods\"] = [];\r\n for (let item of this.missingPeriods)\r\n data[\"missingPeriods\"].push(item.toJSON());\r\n }\r\n data[\"hasMissingQuantities\"] = this.hasMissingQuantities;\r\n data[\"lastCheckedForMissingQuantities\"] = this.lastCheckedForMissingQuantities ? this.lastCheckedForMissingQuantities.toISOString() : undefined;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"status\"] = this.status;\r\n data[\"type\"] = this.type;\r\n data[\"connectedConsumingPropertyId\"] = this.connectedConsumingPropertyId;\r\n data[\"id\"] = this.id;\r\n data[\"netArea\"] = this.netArea ? this.netArea.toJSON() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"entityType\"] = this.entityType;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"searchData\"] = this.searchData;\r\n data[\"entityData\"] = this.entityData;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPropertyModel {\r\n ean?: string | undefined;\r\n street?: string | undefined;\r\n publicStreet?: string | undefined;\r\n lmvNumber?: string | undefined;\r\n internalPropertyNumber?: string | undefined;\r\n propertyOwner?: string | undefined;\r\n housingCooperative?: string | undefined;\r\n area?: number;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n consumption?: number;\r\n housing?: EAHousing;\r\n netAreaId?: string | undefined;\r\n meter?: Meter[] | undefined;\r\n invoiceConsumption?: InvoiceConsumptionModel[] | undefined;\r\n periodQuantitiesPlanned?: PeriodQuantityPlannedModel[] | undefined;\r\n meterInfo?: MeterInfoModel[] | undefined;\r\n propertyEvents?: PropertyEventModel[] | undefined;\r\n missingPeriods?: MissingPeriodModel[] | undefined;\r\n hasMissingQuantities?: boolean;\r\n lastCheckedForMissingQuantities?: moment.Moment;\r\n externalId?: string | undefined;\r\n status?: PropertyStatus;\r\n type?: PropertyType;\r\n connectedConsumingPropertyId?: string | undefined;\r\n id?: string;\r\n netArea?: NetArea;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdBy?: string;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n entityType?: string | undefined;\r\n deleted?: boolean;\r\n searchData?: string | undefined;\r\n entityData?: string | undefined;\r\n}\r\n\r\nexport enum Elavtalsstatus {\r\n Ny = \"Ny\",\r\n KlarForFullmakt = \"KlarForFullmakt\",\r\n FullmaktPagar = \"FullmaktPagar\",\r\n KlarForLevbyte = \"KlarForLevbyte\",\r\n LevbytePagar = \"LevbytePagar\",\r\n LevbyteKlart = \"LevbyteKlart\",\r\n LeveransPagar = \"LeveransPagar\",\r\n Avbruten = \"Avbruten\",\r\n KompletteringPagar = \"KompletteringPagar\",\r\n KlarForKomplettering = \"KlarForKomplettering\",\r\n KlarForAvtalsService = \"KlarForAvtalsService\",\r\n AvtalsServicePagar = \"AvtalsServicePagar\",\r\n LeveransAvslutad = \"LeveransAvslutad\",\r\n KlarForLevFullmakt = \"KlarForLevFullmakt\",\r\n LevFullmaktPagar = \"LevFullmaktPagar\",\r\n FullmaktUppskjuten = \"FullmaktUppskjuten\",\r\n}\r\n\r\nexport enum TypedTagType {\r\n REASON_FOR_TERMINATION = \"REASON_FOR_TERMINATION\",\r\n}\r\n\r\nexport class TypedTagModel implements ITypedTagModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string | undefined;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n parentTagId?: string | undefined;\r\n parentTag?: TypedTagModel;\r\n type?: TypedTagType;\r\n\r\n constructor(data?: ITypedTagModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.name = _data[\"name\"];\r\n this.parentTagId = _data[\"parentTagId\"];\r\n this.parentTag = _data[\"parentTag\"] ? TypedTagModel.fromJS(_data[\"parentTag\"]) : undefined;\r\n this.type = _data[\"type\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TypedTagModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TypedTagModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"name\"] = this.name;\r\n data[\"parentTagId\"] = this.parentTagId;\r\n data[\"parentTag\"] = this.parentTag ? this.parentTag.toJSON() : undefined;\r\n data[\"type\"] = this.type;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITypedTagModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string | undefined;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n parentTagId?: string | undefined;\r\n parentTag?: TypedTagModel;\r\n type?: TypedTagType;\r\n}\r\n\r\nexport class FileModel implements IFileModel {\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n fileName?: string | undefined;\r\n contentType?: string | undefined;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdBy?: string;\r\n companyId?: string;\r\n url?: string | undefined;\r\n\r\n constructor(data?: IFileModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.fileName = _data[\"fileName\"];\r\n this.contentType = _data[\"contentType\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdBy = _data[\"createdBy\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.url = _data[\"url\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FileModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FileModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"fileName\"] = this.fileName;\r\n data[\"contentType\"] = this.contentType;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"url\"] = this.url;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFileModel {\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n fileName?: string | undefined;\r\n contentType?: string | undefined;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdBy?: string;\r\n companyId?: string;\r\n url?: string | undefined;\r\n}\r\n\r\nexport class Supplier implements ISupplier {\r\n type?: NetActorType;\r\n id?: string;\r\n name?: string | undefined;\r\n edielId?: string | undefined;\r\n prodatCommunicationAddress?: string | undefined;\r\n prodatSubAddress?: string | undefined;\r\n prodatInterchangePartyId?: string | undefined;\r\n utiltsCommunicationAddress?: string | undefined;\r\n utiltsSubAddress?: string | undefined;\r\n utiltsInterchangePartyId?: string | undefined;\r\n warrantEmail?: string | undefined;\r\n warrantEmailManual?: string | undefined;\r\n phoneNumberCustomerSupport?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n digitalIdRequired?: boolean | undefined;\r\n\r\n constructor(data?: ISupplier) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.type = _data[\"type\"];\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.edielId = _data[\"edielId\"];\r\n this.prodatCommunicationAddress = _data[\"prodatCommunicationAddress\"];\r\n this.prodatSubAddress = _data[\"prodatSubAddress\"];\r\n this.prodatInterchangePartyId = _data[\"prodatInterchangePartyId\"];\r\n this.utiltsCommunicationAddress = _data[\"utiltsCommunicationAddress\"];\r\n this.utiltsSubAddress = _data[\"utiltsSubAddress\"];\r\n this.utiltsInterchangePartyId = _data[\"utiltsInterchangePartyId\"];\r\n this.warrantEmail = _data[\"warrantEmail\"];\r\n this.warrantEmailManual = _data[\"warrantEmailManual\"];\r\n this.phoneNumberCustomerSupport = _data[\"phoneNumberCustomerSupport\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.digitalIdRequired = _data[\"digitalIdRequired\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Supplier {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Supplier();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"type\"] = this.type;\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"edielId\"] = this.edielId;\r\n data[\"prodatCommunicationAddress\"] = this.prodatCommunicationAddress;\r\n data[\"prodatSubAddress\"] = this.prodatSubAddress;\r\n data[\"prodatInterchangePartyId\"] = this.prodatInterchangePartyId;\r\n data[\"utiltsCommunicationAddress\"] = this.utiltsCommunicationAddress;\r\n data[\"utiltsSubAddress\"] = this.utiltsSubAddress;\r\n data[\"utiltsInterchangePartyId\"] = this.utiltsInterchangePartyId;\r\n data[\"warrantEmail\"] = this.warrantEmail;\r\n data[\"warrantEmailManual\"] = this.warrantEmailManual;\r\n data[\"phoneNumberCustomerSupport\"] = this.phoneNumberCustomerSupport;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"digitalIdRequired\"] = this.digitalIdRequired;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISupplier {\r\n type?: NetActorType;\r\n id?: string;\r\n name?: string | undefined;\r\n edielId?: string | undefined;\r\n prodatCommunicationAddress?: string | undefined;\r\n prodatSubAddress?: string | undefined;\r\n prodatInterchangePartyId?: string | undefined;\r\n utiltsCommunicationAddress?: string | undefined;\r\n utiltsSubAddress?: string | undefined;\r\n utiltsInterchangePartyId?: string | undefined;\r\n warrantEmail?: string | undefined;\r\n warrantEmailManual?: string | undefined;\r\n phoneNumberCustomerSupport?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n digitalIdRequired?: boolean | undefined;\r\n}\r\n\r\nexport class ElavtalBillogramExtensionsBanner implements IElavtalBillogramExtensionsBanner {\r\n id?: string;\r\n bannerId?: string | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n\r\n constructor(data?: IElavtalBillogramExtensionsBanner) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.bannerId = _data[\"bannerId\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ElavtalBillogramExtensionsBanner {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ElavtalBillogramExtensionsBanner();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"bannerId\"] = this.bannerId;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IElavtalBillogramExtensionsBanner {\r\n id?: string;\r\n bannerId?: string | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n}\r\n\r\nexport class ElavtalBillogramExtensions implements IElavtalBillogramExtensions {\r\n id?: string;\r\n elavtalId?: string;\r\n banners?: ElavtalBillogramExtensionsBanner[] | undefined;\r\n\r\n constructor(data?: IElavtalBillogramExtensions) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.elavtalId = _data[\"elavtalId\"];\r\n if (Array.isArray(_data[\"banners\"])) {\r\n this.banners = [] as any;\r\n for (let item of _data[\"banners\"])\r\n this.banners!.push(ElavtalBillogramExtensionsBanner.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ElavtalBillogramExtensions {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ElavtalBillogramExtensions();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n if (Array.isArray(this.banners)) {\r\n data[\"banners\"] = [];\r\n for (let item of this.banners)\r\n data[\"banners\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IElavtalBillogramExtensions {\r\n id?: string;\r\n elavtalId?: string;\r\n banners?: ElavtalBillogramExtensionsBanner[] | undefined;\r\n}\r\n\r\nexport class InvoiceDataItemModel implements IInvoiceDataItemModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n invoiceItem?: InvoiceItemModel;\r\n invoiceItemId?: string | undefined;\r\n\r\n constructor(data?: IInvoiceDataItemModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.invoiceDataId = _data[\"invoiceDataId\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.contract = _data[\"contract\"] ? Contract.fromJS(_data[\"contract\"]) : undefined;\r\n this.price = _data[\"price\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.amount = _data[\"amount\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n this.invoiceItem = _data[\"invoiceItem\"] ? InvoiceItemModel.fromJS(_data[\"invoiceItem\"]) : undefined;\r\n this.invoiceItemId = _data[\"invoiceItemId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDataItemModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDataItemModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"invoiceDataId\"] = this.invoiceDataId;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"contract\"] = this.contract ? this.contract.toJSON() : undefined;\r\n data[\"price\"] = this.price;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"amount\"] = this.amount;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n data[\"invoiceItem\"] = this.invoiceItem ? this.invoiceItem.toJSON() : undefined;\r\n data[\"invoiceItemId\"] = this.invoiceItemId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceDataItemModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n invoiceItem?: InvoiceItemModel;\r\n invoiceItemId?: string | undefined;\r\n}\r\n\r\nexport enum ArticleUnit {\r\n DAY = \"DAY\",\r\n MONTH = \"MONTH\",\r\n YEAR = \"YEAR\",\r\n KWH = \"KWH\",\r\n}\r\n\r\nexport class ArticleModel implements IArticleModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n description?: string | undefined;\r\n price?: number;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n vat?: boolean;\r\n unit?: ArticleUnit;\r\n systemArticle?: boolean;\r\n excludeAccountingObjects?: boolean;\r\n\r\n constructor(data?: IArticleModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.name = _data[\"name\"];\r\n this.description = _data[\"description\"];\r\n this.price = _data[\"price\"];\r\n this.incomeAccount = _data[\"incomeAccount\"];\r\n this.vatAccount = _data[\"vatAccount\"];\r\n this.vat = _data[\"vat\"];\r\n this.unit = _data[\"unit\"];\r\n this.systemArticle = _data[\"systemArticle\"];\r\n this.excludeAccountingObjects = _data[\"excludeAccountingObjects\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ArticleModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ArticleModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"name\"] = this.name;\r\n data[\"description\"] = this.description;\r\n data[\"price\"] = this.price;\r\n data[\"incomeAccount\"] = this.incomeAccount;\r\n data[\"vatAccount\"] = this.vatAccount;\r\n data[\"vat\"] = this.vat;\r\n data[\"unit\"] = this.unit;\r\n data[\"systemArticle\"] = this.systemArticle;\r\n data[\"excludeAccountingObjects\"] = this.excludeAccountingObjects;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IArticleModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n description?: string | undefined;\r\n price?: number;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n vat?: boolean;\r\n unit?: ArticleUnit;\r\n systemArticle?: boolean;\r\n excludeAccountingObjects?: boolean;\r\n}\r\n\r\nexport class InvoiceItemModel implements IInvoiceItemModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n description?: string | undefined;\r\n vat?: boolean;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n isBilled?: boolean;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n invoiceDatas?: InvoiceDataItemModel[] | undefined;\r\n customerId?: string;\r\n customer?: CustomerModel;\r\n propertyId?: string | undefined;\r\n property?: PropertyModel;\r\n elavtalId?: string | undefined;\r\n elavtal?: Elavtal;\r\n articleId?: string | undefined;\r\n article?: ArticleModel;\r\n\r\n constructor(data?: IInvoiceItemModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.name = _data[\"name\"];\r\n this.description = _data[\"description\"];\r\n this.vat = _data[\"vat\"];\r\n this.price = _data[\"price\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.isBilled = _data[\"isBilled\"];\r\n this.incomeAccount = _data[\"incomeAccount\"];\r\n this.vatAccount = _data[\"vatAccount\"];\r\n if (Array.isArray(_data[\"invoiceDatas\"])) {\r\n this.invoiceDatas = [] as any;\r\n for (let item of _data[\"invoiceDatas\"])\r\n this.invoiceDatas!.push(InvoiceDataItemModel.fromJS(item));\r\n }\r\n this.customerId = _data[\"customerId\"];\r\n this.customer = _data[\"customer\"] ? CustomerModel.fromJS(_data[\"customer\"]) : undefined;\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n this.elavtalId = _data[\"elavtalId\"];\r\n this.elavtal = _data[\"elavtal\"] ? Elavtal.fromJS(_data[\"elavtal\"]) : undefined;\r\n this.articleId = _data[\"articleId\"];\r\n this.article = _data[\"article\"] ? ArticleModel.fromJS(_data[\"article\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceItemModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceItemModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"name\"] = this.name;\r\n data[\"description\"] = this.description;\r\n data[\"vat\"] = this.vat;\r\n data[\"price\"] = this.price;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"isBilled\"] = this.isBilled;\r\n data[\"incomeAccount\"] = this.incomeAccount;\r\n data[\"vatAccount\"] = this.vatAccount;\r\n if (Array.isArray(this.invoiceDatas)) {\r\n data[\"invoiceDatas\"] = [];\r\n for (let item of this.invoiceDatas)\r\n data[\"invoiceDatas\"].push(item.toJSON());\r\n }\r\n data[\"customerId\"] = this.customerId;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n data[\"elavtal\"] = this.elavtal ? this.elavtal.toJSON() : undefined;\r\n data[\"articleId\"] = this.articleId;\r\n data[\"article\"] = this.article ? this.article.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceItemModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n description?: string | undefined;\r\n vat?: boolean;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n isBilled?: boolean;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n invoiceDatas?: InvoiceDataItemModel[] | undefined;\r\n customerId?: string;\r\n customer?: CustomerModel;\r\n propertyId?: string | undefined;\r\n property?: PropertyModel;\r\n elavtalId?: string | undefined;\r\n elavtal?: Elavtal;\r\n articleId?: string | undefined;\r\n article?: ArticleModel;\r\n}\r\n\r\nexport class ContactTypeModel implements IContactTypeModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n\r\n constructor(data?: IContactTypeModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ContactTypeModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ContactTypeModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IContactTypeModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n name?: string | undefined;\r\n}\r\n\r\nexport class DeliveryContactModel implements IDeliveryContactModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n deliveryId?: string;\r\n delivery?: Elavtal;\r\n customerId?: string;\r\n customer?: CustomerModel;\r\n contactTypeId?: string;\r\n contactType?: ContactTypeModel;\r\n\r\n constructor(data?: IDeliveryContactModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.deliveryId = _data[\"deliveryId\"];\r\n this.delivery = _data[\"delivery\"] ? Elavtal.fromJS(_data[\"delivery\"]) : undefined;\r\n this.customerId = _data[\"customerId\"];\r\n this.customer = _data[\"customer\"] ? CustomerModel.fromJS(_data[\"customer\"]) : undefined;\r\n this.contactTypeId = _data[\"contactTypeId\"];\r\n this.contactType = _data[\"contactType\"] ? ContactTypeModel.fromJS(_data[\"contactType\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DeliveryContactModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new DeliveryContactModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"deliveryId\"] = this.deliveryId;\r\n data[\"delivery\"] = this.delivery ? this.delivery.toJSON() : undefined;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n data[\"contactTypeId\"] = this.contactTypeId;\r\n data[\"contactType\"] = this.contactType ? this.contactType.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDeliveryContactModel {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n deliveryId?: string;\r\n delivery?: Elavtal;\r\n customerId?: string;\r\n customer?: CustomerModel;\r\n contactTypeId?: string;\r\n contactType?: ContactTypeModel;\r\n}\r\n\r\nexport enum ChangeOfMeasuringMethodRequestStatus {\r\n NEW = \"NEW\",\r\n SENT = \"SENT\",\r\n RECEIVED = \"RECEIVED\",\r\n COMPLETED = \"COMPLETED\",\r\n CANCELED = \"CANCELED\",\r\n ERROR = \"ERROR\",\r\n}\r\n\r\nexport class ChangeMeasuringMethodRequest implements IChangeMeasuringMethodRequest {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n requestedMeasuringMethod?: MeasureMethod;\r\n requestStatus?: ChangeOfMeasuringMethodRequestStatus;\r\n direction?: Direction;\r\n requestedStartDate?: moment.Moment;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n\r\n constructor(data?: IChangeMeasuringMethodRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.requestedMeasuringMethod = _data[\"requestedMeasuringMethod\"];\r\n this.requestStatus = _data[\"requestStatus\"];\r\n this.direction = _data[\"direction\"];\r\n this.requestedStartDate = _data[\"requestedStartDate\"] ? moment(_data[\"requestedStartDate\"].toString()) : undefined;\r\n this.elavtalId = _data[\"elavtalId\"];\r\n this.elavtal = _data[\"elavtal\"] ? Elavtal.fromJS(_data[\"elavtal\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChangeMeasuringMethodRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ChangeMeasuringMethodRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"requestedMeasuringMethod\"] = this.requestedMeasuringMethod;\r\n data[\"requestStatus\"] = this.requestStatus;\r\n data[\"direction\"] = this.direction;\r\n data[\"requestedStartDate\"] = this.requestedStartDate ? this.requestedStartDate.toISOString() : undefined;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n data[\"elavtal\"] = this.elavtal ? this.elavtal.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IChangeMeasuringMethodRequest {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n requestedMeasuringMethod?: MeasureMethod;\r\n requestStatus?: ChangeOfMeasuringMethodRequestStatus;\r\n direction?: Direction;\r\n requestedStartDate?: moment.Moment;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n}\r\n\r\nexport class Elavtal implements IElavtal {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n customerId?: string;\r\n customer?: CustomerModel;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n currentFirstName?: string | undefined;\r\n currentLastName?: string | undefined;\r\n supplierChangeType?: SupplierChangeType;\r\n elavtalsstatus?: Elavtalsstatus;\r\n statusDescription?: string | undefined;\r\n signedFromIp?: string | undefined;\r\n orderId?: string;\r\n requiresHourlyMeasuring?: boolean;\r\n hasProductionContract?: boolean;\r\n completionId?: string | undefined;\r\n salesChannelId?: string;\r\n salesChannel?: SalesChannelModel;\r\n salesDate?: moment.Moment | undefined;\r\n salesPerson?: string | undefined;\r\n startDate?: moment.Moment | undefined;\r\n endDate?: moment.Moment | undefined;\r\n stoppedForBillingToDate?: moment.Moment | undefined;\r\n reasonForTerminationTagId?: string | undefined;\r\n reasonForTerminationTag?: TypedTagModel;\r\n warrantLink?: string | undefined;\r\n warrantFileId?: string | undefined;\r\n warrantFile?: FileModel;\r\n tags?: Tag[] | undefined;\r\n previousSupplierId?: string | undefined;\r\n previousSupplier?: Supplier;\r\n billogramExtensions?: ElavtalBillogramExtensions;\r\n contracts?: Contract[] | undefined;\r\n invoiceItems?: InvoiceItemModel[] | undefined;\r\n signatureId?: string | undefined;\r\n accountingObjects?: AccountingObjectModel[] | undefined;\r\n contacts?: DeliveryContactModel[] | undefined;\r\n changeMeasuringMethodRequests?: ChangeMeasuringMethodRequest[] | undefined;\r\n searchData?: string | undefined;\r\n entityData?: string | undefined;\r\n entityType?: string | undefined;\r\n regardingName?: string | undefined;\r\n\r\n constructor(data?: IElavtal) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.modifiedBy = _data[\"modifiedBy\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.companyId = _data[\"companyId\"];\r\n this.company = _data[\"company\"] ? CompanyModel.fromJS(_data[\"company\"]) : undefined;\r\n this.customerId = _data[\"customerId\"];\r\n this.customer = _data[\"customer\"] ? CustomerModel.fromJS(_data[\"customer\"]) : undefined;\r\n this.propertyId = _data[\"propertyId\"];\r\n this.property = _data[\"property\"] ? PropertyModel.fromJS(_data[\"property\"]) : undefined;\r\n this.currentFirstName = _data[\"currentFirstName\"];\r\n this.currentLastName = _data[\"currentLastName\"];\r\n this.supplierChangeType = _data[\"supplierChangeType\"];\r\n this.elavtalsstatus = _data[\"elavtalsstatus\"];\r\n this.statusDescription = _data[\"statusDescription\"];\r\n this.signedFromIp = _data[\"signedFromIp\"];\r\n this.orderId = _data[\"orderId\"];\r\n this.requiresHourlyMeasuring = _data[\"requiresHourlyMeasuring\"];\r\n this.hasProductionContract = _data[\"hasProductionContract\"];\r\n this.completionId = _data[\"completionId\"];\r\n this.salesChannelId = _data[\"salesChannelId\"];\r\n this.salesChannel = _data[\"salesChannel\"] ? SalesChannelModel.fromJS(_data[\"salesChannel\"]) : undefined;\r\n this.salesDate = _data[\"salesDate\"] ? moment(_data[\"salesDate\"].toString()) : undefined;\r\n this.salesPerson = _data[\"salesPerson\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.stoppedForBillingToDate = _data[\"stoppedForBillingToDate\"] ? moment(_data[\"stoppedForBillingToDate\"].toString()) : undefined;\r\n this.reasonForTerminationTagId = _data[\"reasonForTerminationTagId\"];\r\n this.reasonForTerminationTag = _data[\"reasonForTerminationTag\"] ? TypedTagModel.fromJS(_data[\"reasonForTerminationTag\"]) : undefined;\r\n this.warrantLink = _data[\"warrantLink\"];\r\n this.warrantFileId = _data[\"warrantFileId\"];\r\n this.warrantFile = _data[\"warrantFile\"] ? FileModel.fromJS(_data[\"warrantFile\"]) : undefined;\r\n if (Array.isArray(_data[\"tags\"])) {\r\n this.tags = [] as any;\r\n for (let item of _data[\"tags\"])\r\n this.tags!.push(Tag.fromJS(item));\r\n }\r\n this.previousSupplierId = _data[\"previousSupplierId\"];\r\n this.previousSupplier = _data[\"previousSupplier\"] ? Supplier.fromJS(_data[\"previousSupplier\"]) : undefined;\r\n this.billogramExtensions = _data[\"billogramExtensions\"] ? ElavtalBillogramExtensions.fromJS(_data[\"billogramExtensions\"]) : undefined;\r\n if (Array.isArray(_data[\"contracts\"])) {\r\n this.contracts = [] as any;\r\n for (let item of _data[\"contracts\"])\r\n this.contracts!.push(Contract.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"invoiceItems\"])) {\r\n this.invoiceItems = [] as any;\r\n for (let item of _data[\"invoiceItems\"])\r\n this.invoiceItems!.push(InvoiceItemModel.fromJS(item));\r\n }\r\n this.signatureId = _data[\"signatureId\"];\r\n if (Array.isArray(_data[\"accountingObjects\"])) {\r\n this.accountingObjects = [] as any;\r\n for (let item of _data[\"accountingObjects\"])\r\n this.accountingObjects!.push(AccountingObjectModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"contacts\"])) {\r\n this.contacts = [] as any;\r\n for (let item of _data[\"contacts\"])\r\n this.contacts!.push(DeliveryContactModel.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"changeMeasuringMethodRequests\"])) {\r\n this.changeMeasuringMethodRequests = [] as any;\r\n for (let item of _data[\"changeMeasuringMethodRequests\"])\r\n this.changeMeasuringMethodRequests!.push(ChangeMeasuringMethodRequest.fromJS(item));\r\n }\r\n this.searchData = _data[\"searchData\"];\r\n this.entityData = _data[\"entityData\"];\r\n this.entityType = _data[\"entityType\"];\r\n this.regardingName = _data[\"regardingName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Elavtal {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Elavtal();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"modifiedBy\"] = this.modifiedBy;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"companyId\"] = this.companyId;\r\n data[\"company\"] = this.company ? this.company.toJSON() : undefined;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"property\"] = this.property ? this.property.toJSON() : undefined;\r\n data[\"currentFirstName\"] = this.currentFirstName;\r\n data[\"currentLastName\"] = this.currentLastName;\r\n data[\"supplierChangeType\"] = this.supplierChangeType;\r\n data[\"elavtalsstatus\"] = this.elavtalsstatus;\r\n data[\"statusDescription\"] = this.statusDescription;\r\n data[\"signedFromIp\"] = this.signedFromIp;\r\n data[\"orderId\"] = this.orderId;\r\n data[\"requiresHourlyMeasuring\"] = this.requiresHourlyMeasuring;\r\n data[\"hasProductionContract\"] = this.hasProductionContract;\r\n data[\"completionId\"] = this.completionId;\r\n data[\"salesChannelId\"] = this.salesChannelId;\r\n data[\"salesChannel\"] = this.salesChannel ? this.salesChannel.toJSON() : undefined;\r\n data[\"salesDate\"] = this.salesDate ? this.salesDate.toISOString() : undefined;\r\n data[\"salesPerson\"] = this.salesPerson;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"stoppedForBillingToDate\"] = this.stoppedForBillingToDate ? this.stoppedForBillingToDate.toISOString() : undefined;\r\n data[\"reasonForTerminationTagId\"] = this.reasonForTerminationTagId;\r\n data[\"reasonForTerminationTag\"] = this.reasonForTerminationTag ? this.reasonForTerminationTag.toJSON() : undefined;\r\n data[\"warrantLink\"] = this.warrantLink;\r\n data[\"warrantFileId\"] = this.warrantFileId;\r\n data[\"warrantFile\"] = this.warrantFile ? this.warrantFile.toJSON() : undefined;\r\n if (Array.isArray(this.tags)) {\r\n data[\"tags\"] = [];\r\n for (let item of this.tags)\r\n data[\"tags\"].push(item.toJSON());\r\n }\r\n data[\"previousSupplierId\"] = this.previousSupplierId;\r\n data[\"previousSupplier\"] = this.previousSupplier ? this.previousSupplier.toJSON() : undefined;\r\n data[\"billogramExtensions\"] = this.billogramExtensions ? this.billogramExtensions.toJSON() : undefined;\r\n if (Array.isArray(this.contracts)) {\r\n data[\"contracts\"] = [];\r\n for (let item of this.contracts)\r\n data[\"contracts\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.invoiceItems)) {\r\n data[\"invoiceItems\"] = [];\r\n for (let item of this.invoiceItems)\r\n data[\"invoiceItems\"].push(item.toJSON());\r\n }\r\n data[\"signatureId\"] = this.signatureId;\r\n if (Array.isArray(this.accountingObjects)) {\r\n data[\"accountingObjects\"] = [];\r\n for (let item of this.accountingObjects)\r\n data[\"accountingObjects\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.contacts)) {\r\n data[\"contacts\"] = [];\r\n for (let item of this.contacts)\r\n data[\"contacts\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.changeMeasuringMethodRequests)) {\r\n data[\"changeMeasuringMethodRequests\"] = [];\r\n for (let item of this.changeMeasuringMethodRequests)\r\n data[\"changeMeasuringMethodRequests\"].push(item.toJSON());\r\n }\r\n data[\"searchData\"] = this.searchData;\r\n data[\"entityData\"] = this.entityData;\r\n data[\"entityType\"] = this.entityType;\r\n data[\"regardingName\"] = this.regardingName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IElavtal {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n modifiedBy?: string;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n companyId?: string;\r\n company?: CompanyModel;\r\n customerId?: string;\r\n customer?: CustomerModel;\r\n propertyId?: string;\r\n property?: PropertyModel;\r\n currentFirstName?: string | undefined;\r\n currentLastName?: string | undefined;\r\n supplierChangeType?: SupplierChangeType;\r\n elavtalsstatus?: Elavtalsstatus;\r\n statusDescription?: string | undefined;\r\n signedFromIp?: string | undefined;\r\n orderId?: string;\r\n requiresHourlyMeasuring?: boolean;\r\n hasProductionContract?: boolean;\r\n completionId?: string | undefined;\r\n salesChannelId?: string;\r\n salesChannel?: SalesChannelModel;\r\n salesDate?: moment.Moment | undefined;\r\n salesPerson?: string | undefined;\r\n startDate?: moment.Moment | undefined;\r\n endDate?: moment.Moment | undefined;\r\n stoppedForBillingToDate?: moment.Moment | undefined;\r\n reasonForTerminationTagId?: string | undefined;\r\n reasonForTerminationTag?: TypedTagModel;\r\n warrantLink?: string | undefined;\r\n warrantFileId?: string | undefined;\r\n warrantFile?: FileModel;\r\n tags?: Tag[] | undefined;\r\n previousSupplierId?: string | undefined;\r\n previousSupplier?: Supplier;\r\n billogramExtensions?: ElavtalBillogramExtensions;\r\n contracts?: Contract[] | undefined;\r\n invoiceItems?: InvoiceItemModel[] | undefined;\r\n signatureId?: string | undefined;\r\n accountingObjects?: AccountingObjectModel[] | undefined;\r\n contacts?: DeliveryContactModel[] | undefined;\r\n changeMeasuringMethodRequests?: ChangeMeasuringMethodRequest[] | undefined;\r\n searchData?: string | undefined;\r\n entityData?: string | undefined;\r\n entityType?: string | undefined;\r\n regardingName?: string | undefined;\r\n}\r\n\r\nexport class InvoiceDataRow implements IInvoiceDataRow {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n\r\n constructor(data?: IInvoiceDataRow) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.invoiceDataId = _data[\"invoiceDataId\"];\r\n this.contractId = _data[\"contractId\"];\r\n this.contract = _data[\"contract\"] ? Contract.fromJS(_data[\"contract\"]) : undefined;\r\n this.price = _data[\"price\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.amount = _data[\"amount\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceDataRow {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceDataRow();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"invoiceDataId\"] = this.invoiceDataId;\r\n data[\"contractId\"] = this.contractId;\r\n data[\"contract\"] = this.contract ? this.contract.toJSON() : undefined;\r\n data[\"price\"] = this.price;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"amount\"] = this.amount;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceDataRow {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n invoiceDataId?: string;\r\n contractId?: string | undefined;\r\n contract?: Contract;\r\n price?: number;\r\n quantity?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n amount?: number;\r\n vatAmount?: number;\r\n}\r\n\r\nexport class AccountingDimension implements IAccountingDimension {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n dimensionId?: number;\r\n name?: string | undefined;\r\n\r\n constructor(data?: IAccountingDimension) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.dimensionId = _data[\"dimensionId\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AccountingDimension {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AccountingDimension();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"dimensionId\"] = this.dimensionId;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAccountingDimension {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n dimensionId?: number;\r\n name?: string | undefined;\r\n}\r\n\r\nexport class AccountingObject implements IAccountingObject {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n objectId?: number;\r\n name?: string | undefined;\r\n dimension?: AccountingDimension;\r\n\r\n constructor(data?: IAccountingObject) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.objectId = _data[\"objectId\"];\r\n this.name = _data[\"name\"];\r\n this.dimension = _data[\"dimension\"] ? AccountingDimension.fromJS(_data[\"dimension\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): AccountingObject {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AccountingObject();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"objectId\"] = this.objectId;\r\n data[\"name\"] = this.name;\r\n data[\"dimension\"] = this.dimension ? this.dimension.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAccountingObject {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n objectId?: number;\r\n name?: string | undefined;\r\n dimension?: AccountingDimension;\r\n}\r\n\r\nexport class InvoiceRow implements IInvoiceRow {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n heading?: string | undefined;\r\n description?: string | undefined;\r\n unit?: string | undefined;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n quantity?: number;\r\n price?: number;\r\n amount?: number;\r\n vatAmount?: number;\r\n accountingObjects?: AccountingObject[] | undefined;\r\n\r\n constructor(data?: IInvoiceRow) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.heading = _data[\"heading\"];\r\n this.description = _data[\"description\"];\r\n this.unit = _data[\"unit\"];\r\n this.incomeAccount = _data[\"incomeAccount\"];\r\n this.vatAccount = _data[\"vatAccount\"];\r\n this.quantity = _data[\"quantity\"];\r\n this.price = _data[\"price\"];\r\n this.amount = _data[\"amount\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n if (Array.isArray(_data[\"accountingObjects\"])) {\r\n this.accountingObjects = [] as any;\r\n for (let item of _data[\"accountingObjects\"])\r\n this.accountingObjects!.push(AccountingObject.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceRow {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceRow();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"heading\"] = this.heading;\r\n data[\"description\"] = this.description;\r\n data[\"unit\"] = this.unit;\r\n data[\"incomeAccount\"] = this.incomeAccount;\r\n data[\"vatAccount\"] = this.vatAccount;\r\n data[\"quantity\"] = this.quantity;\r\n data[\"price\"] = this.price;\r\n data[\"amount\"] = this.amount;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n if (Array.isArray(this.accountingObjects)) {\r\n data[\"accountingObjects\"] = [];\r\n for (let item of this.accountingObjects)\r\n data[\"accountingObjects\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceRow {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n heading?: string | undefined;\r\n description?: string | undefined;\r\n unit?: string | undefined;\r\n incomeAccount?: string | undefined;\r\n vatAccount?: string | undefined;\r\n quantity?: number;\r\n price?: number;\r\n amount?: number;\r\n vatAmount?: number;\r\n accountingObjects?: AccountingObject[] | undefined;\r\n}\r\n\r\nexport class Customer implements ICustomer {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n fullName?: string | undefined;\r\n customerType?: CustomerType;\r\n pid?: string | undefined;\r\n personalIdType?: PersonalIdType;\r\n birthDate?: moment.Moment | undefined;\r\n additionalPersonalId?: string | undefined;\r\n street?: string | undefined;\r\n coAddress?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n mobile?: string | undefined;\r\n phone?: string | undefined;\r\n email?: string | undefined;\r\n billogramCustomerId?: number | undefined;\r\n efaktura_Recipient_Identifier?: string | undefined;\r\n recurringPaymentType?: RecurringPaymentType;\r\n edi_electronic_id?: string | undefined;\r\n edi_operator?: string | undefined;\r\n edi_reference?: string | undefined;\r\n useInvoiceCollection?: boolean;\r\n invoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n\r\n constructor(data?: ICustomer) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.fullName = _data[\"fullName\"];\r\n this.customerType = _data[\"customerType\"];\r\n this.pid = _data[\"pid\"];\r\n this.personalIdType = _data[\"personalIdType\"];\r\n this.birthDate = _data[\"birthDate\"] ? moment(_data[\"birthDate\"].toString()) : undefined;\r\n this.additionalPersonalId = _data[\"additionalPersonalId\"];\r\n this.street = _data[\"street\"];\r\n this.coAddress = _data[\"coAddress\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.phone = _data[\"phone\"];\r\n this.email = _data[\"email\"];\r\n this.billogramCustomerId = _data[\"billogramCustomerId\"];\r\n this.efaktura_Recipient_Identifier = _data[\"efaktura_Recipient_Identifier\"];\r\n this.recurringPaymentType = _data[\"recurringPaymentType\"];\r\n this.edi_electronic_id = _data[\"edi_electronic_id\"];\r\n this.edi_operator = _data[\"edi_operator\"];\r\n this.edi_reference = _data[\"edi_reference\"];\r\n this.useInvoiceCollection = _data[\"useInvoiceCollection\"];\r\n this.invoiceDeliveryMethod = _data[\"invoiceDeliveryMethod\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Customer {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Customer();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"fullName\"] = this.fullName;\r\n data[\"customerType\"] = this.customerType;\r\n data[\"pid\"] = this.pid;\r\n data[\"personalIdType\"] = this.personalIdType;\r\n data[\"birthDate\"] = this.birthDate ? this.birthDate.toISOString() : undefined;\r\n data[\"additionalPersonalId\"] = this.additionalPersonalId;\r\n data[\"street\"] = this.street;\r\n data[\"coAddress\"] = this.coAddress;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"phone\"] = this.phone;\r\n data[\"email\"] = this.email;\r\n data[\"billogramCustomerId\"] = this.billogramCustomerId;\r\n data[\"efaktura_Recipient_Identifier\"] = this.efaktura_Recipient_Identifier;\r\n data[\"recurringPaymentType\"] = this.recurringPaymentType;\r\n data[\"edi_electronic_id\"] = this.edi_electronic_id;\r\n data[\"edi_operator\"] = this.edi_operator;\r\n data[\"edi_reference\"] = this.edi_reference;\r\n data[\"useInvoiceCollection\"] = this.useInvoiceCollection;\r\n data[\"invoiceDeliveryMethod\"] = this.invoiceDeliveryMethod;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ICustomer {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n fullName?: string | undefined;\r\n customerType?: CustomerType;\r\n pid?: string | undefined;\r\n personalIdType?: PersonalIdType;\r\n birthDate?: moment.Moment | undefined;\r\n additionalPersonalId?: string | undefined;\r\n street?: string | undefined;\r\n coAddress?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n mobile?: string | undefined;\r\n phone?: string | undefined;\r\n email?: string | undefined;\r\n billogramCustomerId?: number | undefined;\r\n efaktura_Recipient_Identifier?: string | undefined;\r\n recurringPaymentType?: RecurringPaymentType;\r\n edi_electronic_id?: string | undefined;\r\n edi_operator?: string | undefined;\r\n edi_reference?: string | undefined;\r\n useInvoiceCollection?: boolean;\r\n invoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n}\r\n\r\nexport class Invoice implements IInvoice {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n paymentStatus?: PaymentStatus;\r\n paymentDescription?: string | undefined;\r\n url?: string | undefined;\r\n recipientUrl?: string | undefined;\r\n invoiceDatas?: InvoiceData[] | undefined;\r\n invoiceNumber?: string | undefined;\r\n bankGiro?: string | undefined;\r\n ocr?: string | undefined;\r\n amount?: number;\r\n rounding?: number;\r\n reminderFee?: number;\r\n interestFee?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n respiteDate?: moment.Moment | undefined;\r\n overdueNotificationSent?: boolean;\r\n rows?: InvoiceRow[] | undefined;\r\n status?: InvoiceStatus;\r\n customer?: Customer;\r\n invoicingId?: string;\r\n\r\n constructor(data?: IInvoice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.paymentStatus = _data[\"paymentStatus\"];\r\n this.paymentDescription = _data[\"paymentDescription\"];\r\n this.url = _data[\"url\"];\r\n this.recipientUrl = _data[\"recipientUrl\"];\r\n if (Array.isArray(_data[\"invoiceDatas\"])) {\r\n this.invoiceDatas = [] as any;\r\n for (let item of _data[\"invoiceDatas\"])\r\n this.invoiceDatas!.push(InvoiceData.fromJS(item));\r\n }\r\n this.invoiceNumber = _data[\"invoiceNumber\"];\r\n this.bankGiro = _data[\"bankGiro\"];\r\n this.ocr = _data[\"ocr\"];\r\n this.amount = _data[\"amount\"];\r\n this.rounding = _data[\"rounding\"];\r\n this.reminderFee = _data[\"reminderFee\"];\r\n this.interestFee = _data[\"interestFee\"];\r\n this.dateOfInvoice = _data[\"dateOfInvoice\"] ? moment(_data[\"dateOfInvoice\"].toString()) : undefined;\r\n this.dueDate = _data[\"dueDate\"] ? moment(_data[\"dueDate\"].toString()) : undefined;\r\n this.respiteDate = _data[\"respiteDate\"] ? moment(_data[\"respiteDate\"].toString()) : undefined;\r\n this.overdueNotificationSent = _data[\"overdueNotificationSent\"];\r\n if (Array.isArray(_data[\"rows\"])) {\r\n this.rows = [] as any;\r\n for (let item of _data[\"rows\"])\r\n this.rows!.push(InvoiceRow.fromJS(item));\r\n }\r\n this.status = _data[\"status\"];\r\n this.customer = _data[\"customer\"] ? Customer.fromJS(_data[\"customer\"]) : undefined;\r\n this.invoicingId = _data[\"invoicingId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Invoice {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Invoice();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"paymentStatus\"] = this.paymentStatus;\r\n data[\"paymentDescription\"] = this.paymentDescription;\r\n data[\"url\"] = this.url;\r\n data[\"recipientUrl\"] = this.recipientUrl;\r\n if (Array.isArray(this.invoiceDatas)) {\r\n data[\"invoiceDatas\"] = [];\r\n for (let item of this.invoiceDatas)\r\n data[\"invoiceDatas\"].push(item.toJSON());\r\n }\r\n data[\"invoiceNumber\"] = this.invoiceNumber;\r\n data[\"bankGiro\"] = this.bankGiro;\r\n data[\"ocr\"] = this.ocr;\r\n data[\"amount\"] = this.amount;\r\n data[\"rounding\"] = this.rounding;\r\n data[\"reminderFee\"] = this.reminderFee;\r\n data[\"interestFee\"] = this.interestFee;\r\n data[\"dateOfInvoice\"] = this.dateOfInvoice ? this.dateOfInvoice.toISOString() : undefined;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"respiteDate\"] = this.respiteDate ? this.respiteDate.toISOString() : undefined;\r\n data[\"overdueNotificationSent\"] = this.overdueNotificationSent;\r\n if (Array.isArray(this.rows)) {\r\n data[\"rows\"] = [];\r\n for (let item of this.rows)\r\n data[\"rows\"].push(item.toJSON());\r\n }\r\n data[\"status\"] = this.status;\r\n data[\"customer\"] = this.customer ? this.customer.toJSON() : undefined;\r\n data[\"invoicingId\"] = this.invoicingId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoice {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n paymentStatus?: PaymentStatus;\r\n paymentDescription?: string | undefined;\r\n url?: string | undefined;\r\n recipientUrl?: string | undefined;\r\n invoiceDatas?: InvoiceData[] | undefined;\r\n invoiceNumber?: string | undefined;\r\n bankGiro?: string | undefined;\r\n ocr?: string | undefined;\r\n amount?: number;\r\n rounding?: number;\r\n reminderFee?: number;\r\n interestFee?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n respiteDate?: moment.Moment | undefined;\r\n overdueNotificationSent?: boolean;\r\n rows?: InvoiceRow[] | undefined;\r\n status?: InvoiceStatus;\r\n customer?: Customer;\r\n invoicingId?: string;\r\n}\r\n\r\nexport class InvoiceData implements IInvoiceData {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n invoiceDataStatus?: InvoiceDataStatus;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n rows?: InvoiceDataRow[] | undefined;\r\n invoiceDataCollectionId?: string | undefined;\r\n amountExkludingVat?: number;\r\n vatAmount?: number;\r\n amountIncludingVat?: number;\r\n consumption?: number;\r\n rounding?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n finalInvoice?: boolean;\r\n invoicingId?: string;\r\n invoiceCreated?: boolean;\r\n invoiceId?: string | undefined;\r\n invoice?: Invoice;\r\n\r\n constructor(data?: IInvoiceData) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.externalId = _data[\"externalId\"];\r\n this.invoiceDataStatus = _data[\"invoiceDataStatus\"];\r\n this.elavtalId = _data[\"elavtalId\"];\r\n this.elavtal = _data[\"elavtal\"] ? Elavtal.fromJS(_data[\"elavtal\"]) : undefined;\r\n if (Array.isArray(_data[\"rows\"])) {\r\n this.rows = [] as any;\r\n for (let item of _data[\"rows\"])\r\n this.rows!.push(InvoiceDataRow.fromJS(item));\r\n }\r\n this.invoiceDataCollectionId = _data[\"invoiceDataCollectionId\"];\r\n this.amountExkludingVat = _data[\"amountExkludingVat\"];\r\n this.vatAmount = _data[\"vatAmount\"];\r\n this.amountIncludingVat = _data[\"amountIncludingVat\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.rounding = _data[\"rounding\"];\r\n this.dateOfInvoice = _data[\"dateOfInvoice\"] ? moment(_data[\"dateOfInvoice\"].toString()) : undefined;\r\n this.dueDate = _data[\"dueDate\"] ? moment(_data[\"dueDate\"].toString()) : undefined;\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.finalInvoice = _data[\"finalInvoice\"];\r\n this.invoicingId = _data[\"invoicingId\"];\r\n this.invoiceCreated = _data[\"invoiceCreated\"];\r\n this.invoiceId = _data[\"invoiceId\"];\r\n this.invoice = _data[\"invoice\"] ? Invoice.fromJS(_data[\"invoice\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): InvoiceData {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new InvoiceData();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"invoiceDataStatus\"] = this.invoiceDataStatus;\r\n data[\"elavtalId\"] = this.elavtalId;\r\n data[\"elavtal\"] = this.elavtal ? this.elavtal.toJSON() : undefined;\r\n if (Array.isArray(this.rows)) {\r\n data[\"rows\"] = [];\r\n for (let item of this.rows)\r\n data[\"rows\"].push(item.toJSON());\r\n }\r\n data[\"invoiceDataCollectionId\"] = this.invoiceDataCollectionId;\r\n data[\"amountExkludingVat\"] = this.amountExkludingVat;\r\n data[\"vatAmount\"] = this.vatAmount;\r\n data[\"amountIncludingVat\"] = this.amountIncludingVat;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"rounding\"] = this.rounding;\r\n data[\"dateOfInvoice\"] = this.dateOfInvoice ? this.dateOfInvoice.toISOString() : undefined;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"finalInvoice\"] = this.finalInvoice;\r\n data[\"invoicingId\"] = this.invoicingId;\r\n data[\"invoiceCreated\"] = this.invoiceCreated;\r\n data[\"invoiceId\"] = this.invoiceId;\r\n data[\"invoice\"] = this.invoice ? this.invoice.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoiceData {\r\n id?: string;\r\n modifiedOn?: moment.Moment;\r\n createdOn?: moment.Moment;\r\n deleted?: boolean;\r\n externalId?: string | undefined;\r\n invoiceDataStatus?: InvoiceDataStatus;\r\n elavtalId?: string;\r\n elavtal?: Elavtal;\r\n rows?: InvoiceDataRow[] | undefined;\r\n invoiceDataCollectionId?: string | undefined;\r\n amountExkludingVat?: number;\r\n vatAmount?: number;\r\n amountIncludingVat?: number;\r\n consumption?: number;\r\n rounding?: number;\r\n dateOfInvoice?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment;\r\n finalInvoice?: boolean;\r\n invoicingId?: string;\r\n invoiceCreated?: boolean;\r\n invoiceId?: string | undefined;\r\n invoice?: Invoice;\r\n}\r\n\r\nexport enum InvoicingStatus {\r\n INVOICE_DATA_PROCESSING = \"INVOICE_DATA_PROCESSING\",\r\n INVOICE_DATA_COMPLETE = \"INVOICE_DATA_COMPLETE\",\r\n INVOICE_DATA_INCOMPLETE = \"INVOICE_DATA_INCOMPLETE\",\r\n INVOICE_PROCESSING = \"INVOICE_PROCESSING\",\r\n INVOICE_COMPLETE = \"INVOICE_COMPLETE\",\r\n INVOICE_INCOMPLETE = \"INVOICE_INCOMPLETE\",\r\n INVOICE_SEND_PROCESSING = \"INVOICE_SEND_PROCESSING\",\r\n INVOICE_SEND_COMPLETE = \"INVOICE_SEND_COMPLETE\",\r\n INVOICE_SEND_INCOMPLETE = \"INVOICE_SEND_INCOMPLETE\",\r\n}\r\n\r\nexport class Invoicing implements IInvoicing {\r\n invoicingDate?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n comment?: string | undefined;\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n invoiceData?: InvoiceData[] | undefined;\r\n numberOfElavtal?: number;\r\n numberOfInvoiceDatas?: number;\r\n numberOfInvoiceDataErrors?: number;\r\n numberOfBilledInvoiceDatas?: number;\r\n numberOfInvoices?: number;\r\n numberOfInvoiceErrors?: number;\r\n numberOfSentInvoices?: number;\r\n numberOfInvoiceSendErrors?: number;\r\n totalAmount?: number;\r\n totalConsumption?: number;\r\n completedOn?: moment.Moment | undefined;\r\n status?: InvoicingStatus;\r\n\r\n constructor(data?: IInvoicing) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.invoicingDate = _data[\"invoicingDate\"] ? moment(_data[\"invoicingDate\"].toString()) : undefined;\r\n this.dueDate = _data[\"dueDate\"] ? moment(_data[\"dueDate\"].toString()) : undefined;\r\n this.comment = _data[\"comment\"];\r\n this.id = _data[\"id\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"invoiceData\"])) {\r\n this.invoiceData = [] as any;\r\n for (let item of _data[\"invoiceData\"])\r\n this.invoiceData!.push(InvoiceData.fromJS(item));\r\n }\r\n this.numberOfElavtal = _data[\"numberOfElavtal\"];\r\n this.numberOfInvoiceDatas = _data[\"numberOfInvoiceDatas\"];\r\n this.numberOfInvoiceDataErrors = _data[\"numberOfInvoiceDataErrors\"];\r\n this.numberOfBilledInvoiceDatas = _data[\"numberOfBilledInvoiceDatas\"];\r\n this.numberOfInvoices = _data[\"numberOfInvoices\"];\r\n this.numberOfInvoiceErrors = _data[\"numberOfInvoiceErrors\"];\r\n this.numberOfSentInvoices = _data[\"numberOfSentInvoices\"];\r\n this.numberOfInvoiceSendErrors = _data[\"numberOfInvoiceSendErrors\"];\r\n this.totalAmount = _data[\"totalAmount\"];\r\n this.totalConsumption = _data[\"totalConsumption\"];\r\n this.completedOn = _data[\"completedOn\"] ? moment(_data[\"completedOn\"].toString()) : undefined;\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Invoicing {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Invoicing();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"invoicingDate\"] = this.invoicingDate ? this.invoicingDate.toISOString() : undefined;\r\n data[\"dueDate\"] = this.dueDate ? this.dueDate.toISOString() : undefined;\r\n data[\"comment\"] = this.comment;\r\n data[\"id\"] = this.id;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n if (Array.isArray(this.invoiceData)) {\r\n data[\"invoiceData\"] = [];\r\n for (let item of this.invoiceData)\r\n data[\"invoiceData\"].push(item.toJSON());\r\n }\r\n data[\"numberOfElavtal\"] = this.numberOfElavtal;\r\n data[\"numberOfInvoiceDatas\"] = this.numberOfInvoiceDatas;\r\n data[\"numberOfInvoiceDataErrors\"] = this.numberOfInvoiceDataErrors;\r\n data[\"numberOfBilledInvoiceDatas\"] = this.numberOfBilledInvoiceDatas;\r\n data[\"numberOfInvoices\"] = this.numberOfInvoices;\r\n data[\"numberOfInvoiceErrors\"] = this.numberOfInvoiceErrors;\r\n data[\"numberOfSentInvoices\"] = this.numberOfSentInvoices;\r\n data[\"numberOfInvoiceSendErrors\"] = this.numberOfInvoiceSendErrors;\r\n data[\"totalAmount\"] = this.totalAmount;\r\n data[\"totalConsumption\"] = this.totalConsumption;\r\n data[\"completedOn\"] = this.completedOn ? this.completedOn.toISOString() : undefined;\r\n data[\"status\"] = this.status;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IInvoicing {\r\n invoicingDate?: moment.Moment;\r\n dueDate?: moment.Moment | undefined;\r\n comment?: string | undefined;\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n invoiceData?: InvoiceData[] | undefined;\r\n numberOfElavtal?: number;\r\n numberOfInvoiceDatas?: number;\r\n numberOfInvoiceDataErrors?: number;\r\n numberOfBilledInvoiceDatas?: number;\r\n numberOfInvoices?: number;\r\n numberOfInvoiceErrors?: number;\r\n numberOfSentInvoices?: number;\r\n numberOfInvoiceSendErrors?: number;\r\n totalAmount?: number;\r\n totalConsumption?: number;\r\n completedOn?: moment.Moment | undefined;\r\n status?: InvoicingStatus;\r\n}\r\n\r\nexport class AvyInvoicing implements IAvyInvoicing {\r\n easyId?: string;\r\n easyInvoices?: number;\r\n sentInvoices?: number;\r\n failedInvoices?: number;\r\n\r\n constructor(data?: IAvyInvoicing) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.easyId = _data[\"easyId\"];\r\n this.easyInvoices = _data[\"easyInvoices\"];\r\n this.sentInvoices = _data[\"sentInvoices\"];\r\n this.failedInvoices = _data[\"failedInvoices\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AvyInvoicing {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AvyInvoicing();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"easyId\"] = this.easyId;\r\n data[\"easyInvoices\"] = this.easyInvoices;\r\n data[\"sentInvoices\"] = this.sentInvoices;\r\n data[\"failedInvoices\"] = this.failedInvoices;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAvyInvoicing {\r\n easyId?: string;\r\n easyInvoices?: number;\r\n sentInvoices?: number;\r\n failedInvoices?: number;\r\n}\r\n\r\nexport enum AvyInvoiceStatus {\r\n OK = \"OK\",\r\n FAILED = \"FAILED\",\r\n MISSING = \"MISSING\",\r\n SENDING = \"SENDING\",\r\n}\r\n\r\nexport class AvyInvoice implements IAvyInvoice {\r\n id?: string;\r\n easyInvoicingId?: string;\r\n avyId?: string | undefined;\r\n easyId?: string;\r\n easyUrl?: string | undefined;\r\n customerId?: string;\r\n customerName?: string | undefined;\r\n propertyStreet?: string | undefined;\r\n propertyNumber?: string | undefined;\r\n deliveryStatus?: Elavtalsstatus;\r\n deliveryStartDate?: moment.Moment | undefined;\r\n deliveryEndDate?: moment.Moment | undefined;\r\n invoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n amount?: number;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n status?: AvyInvoiceStatus;\r\n\r\n constructor(data?: IAvyInvoice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.easyInvoicingId = _data[\"easyInvoicingId\"];\r\n this.avyId = _data[\"avyId\"];\r\n this.easyId = _data[\"easyId\"];\r\n this.easyUrl = _data[\"easyUrl\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.customerName = _data[\"customerName\"];\r\n this.propertyStreet = _data[\"propertyStreet\"];\r\n this.propertyNumber = _data[\"propertyNumber\"];\r\n this.deliveryStatus = _data[\"deliveryStatus\"];\r\n this.deliveryStartDate = _data[\"deliveryStartDate\"] ? moment(_data[\"deliveryStartDate\"].toString()) : undefined;\r\n this.deliveryEndDate = _data[\"deliveryEndDate\"] ? moment(_data[\"deliveryEndDate\"].toString()) : undefined;\r\n this.invoiceDeliveryMethod = _data[\"invoiceDeliveryMethod\"];\r\n this.amount = _data[\"amount\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AvyInvoice {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AvyInvoice();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"easyInvoicingId\"] = this.easyInvoicingId;\r\n data[\"avyId\"] = this.avyId;\r\n data[\"easyId\"] = this.easyId;\r\n data[\"easyUrl\"] = this.easyUrl;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"customerName\"] = this.customerName;\r\n data[\"propertyStreet\"] = this.propertyStreet;\r\n data[\"propertyNumber\"] = this.propertyNumber;\r\n data[\"deliveryStatus\"] = this.deliveryStatus;\r\n data[\"deliveryStartDate\"] = this.deliveryStartDate ? this.deliveryStartDate.toISOString() : undefined;\r\n data[\"deliveryEndDate\"] = this.deliveryEndDate ? this.deliveryEndDate.toISOString() : undefined;\r\n data[\"invoiceDeliveryMethod\"] = this.invoiceDeliveryMethod;\r\n data[\"amount\"] = this.amount;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"status\"] = this.status;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAvyInvoice {\r\n id?: string;\r\n easyInvoicingId?: string;\r\n avyId?: string | undefined;\r\n easyId?: string;\r\n easyUrl?: string | undefined;\r\n customerId?: string;\r\n customerName?: string | undefined;\r\n propertyStreet?: string | undefined;\r\n propertyNumber?: string | undefined;\r\n deliveryStatus?: Elavtalsstatus;\r\n deliveryStartDate?: moment.Moment | undefined;\r\n deliveryEndDate?: moment.Moment | undefined;\r\n invoiceDeliveryMethod?: InvoiceDeliveryMethod;\r\n amount?: number;\r\n createdOn?: moment.Moment;\r\n createdBy?: string;\r\n status?: AvyInvoiceStatus;\r\n}\r\n\r\nexport enum RealEstateOrderStatus {\r\n NEW = \"NEW\",\r\n PROCESSED = \"PROCESSED\",\r\n COMPLETED = \"COMPLETED\",\r\n NOT_INTERESTED = \"NOT_INTERESTED\",\r\n NOT_ASKED = \"NOT_ASKED\",\r\n}\r\n\r\nexport enum AddOn {\r\n Electricity = \"Electricity\",\r\n Insurance = \"Insurance\",\r\n Mortgage = \"Mortgage\",\r\n}\r\n\r\nexport enum RealEstateOrderContractMethod {\r\n MAIL = \"MAIL\",\r\n SYSTEM = \"SYSTEM\",\r\n UPLOAD = \"UPLOAD\",\r\n NOT_SET = \"NOT_SET\",\r\n}\r\n\r\nexport class MspecsOrder implements IMspecsOrder {\r\n dealId?: string | undefined;\r\n dealShortId?: string | undefined;\r\n reminderSent?: moment.Moment | undefined;\r\n missingFileNotificationSent?: moment.Moment | undefined;\r\n mspecsFileIds?: string[] | undefined;\r\n caseCreated?: boolean;\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n updatedOn?: moment.Moment;\r\n status?: RealEstateOrderStatus;\r\n addOns?: AddOn[] | undefined;\r\n contractMethod?: RealEstateOrderContractMethod;\r\n comment?: string | undefined;\r\n realEstateObjectId?: string | undefined;\r\n realEstateObject?: RealEstateObjectDbModel;\r\n easyFileIds?: string[] | undefined;\r\n easyCaseId?: string | undefined;\r\n rebelOrderId?: number | undefined;\r\n readonly auditEntityId?: string | undefined;\r\n\r\n constructor(data?: IMspecsOrder) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.dealId = _data[\"dealId\"];\r\n this.dealShortId = _data[\"dealShortId\"];\r\n this.reminderSent = _data[\"reminderSent\"] ? moment(_data[\"reminderSent\"].toString()) : undefined;\r\n this.missingFileNotificationSent = _data[\"missingFileNotificationSent\"] ? moment(_data[\"missingFileNotificationSent\"].toString()) : undefined;\r\n if (Array.isArray(_data[\"mspecsFileIds\"])) {\r\n this.mspecsFileIds = [] as any;\r\n for (let item of _data[\"mspecsFileIds\"])\r\n this.mspecsFileIds!.push(item);\r\n }\r\n this.caseCreated = _data[\"caseCreated\"];\r\n this.id = _data[\"id\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.updatedOn = _data[\"updatedOn\"] ? moment(_data[\"updatedOn\"].toString()) : undefined;\r\n this.status = _data[\"status\"];\r\n if (Array.isArray(_data[\"addOns\"])) {\r\n this.addOns = [] as any;\r\n for (let item of _data[\"addOns\"])\r\n this.addOns!.push(item);\r\n }\r\n this.contractMethod = _data[\"contractMethod\"];\r\n this.comment = _data[\"comment\"];\r\n this.realEstateObjectId = _data[\"realEstateObjectId\"];\r\n this.realEstateObject = _data[\"realEstateObject\"] ? RealEstateObjectDbModel.fromJS(_data[\"realEstateObject\"]) : undefined;\r\n if (Array.isArray(_data[\"easyFileIds\"])) {\r\n this.easyFileIds = [] as any;\r\n for (let item of _data[\"easyFileIds\"])\r\n this.easyFileIds!.push(item);\r\n }\r\n this.easyCaseId = _data[\"easyCaseId\"];\r\n this.rebelOrderId = _data[\"rebelOrderId\"];\r\n (this).auditEntityId = _data[\"auditEntityId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MspecsOrder {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MspecsOrder();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"dealId\"] = this.dealId;\r\n data[\"dealShortId\"] = this.dealShortId;\r\n data[\"reminderSent\"] = this.reminderSent ? this.reminderSent.toISOString() : undefined;\r\n data[\"missingFileNotificationSent\"] = this.missingFileNotificationSent ? this.missingFileNotificationSent.toISOString() : undefined;\r\n if (Array.isArray(this.mspecsFileIds)) {\r\n data[\"mspecsFileIds\"] = [];\r\n for (let item of this.mspecsFileIds)\r\n data[\"mspecsFileIds\"].push(item);\r\n }\r\n data[\"caseCreated\"] = this.caseCreated;\r\n data[\"id\"] = this.id;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"updatedOn\"] = this.updatedOn ? this.updatedOn.toISOString() : undefined;\r\n data[\"status\"] = this.status;\r\n if (Array.isArray(this.addOns)) {\r\n data[\"addOns\"] = [];\r\n for (let item of this.addOns)\r\n data[\"addOns\"].push(item);\r\n }\r\n data[\"contractMethod\"] = this.contractMethod;\r\n data[\"comment\"] = this.comment;\r\n data[\"realEstateObjectId\"] = this.realEstateObjectId;\r\n data[\"realEstateObject\"] = this.realEstateObject ? this.realEstateObject.toJSON() : undefined;\r\n if (Array.isArray(this.easyFileIds)) {\r\n data[\"easyFileIds\"] = [];\r\n for (let item of this.easyFileIds)\r\n data[\"easyFileIds\"].push(item);\r\n }\r\n data[\"easyCaseId\"] = this.easyCaseId;\r\n data[\"rebelOrderId\"] = this.rebelOrderId;\r\n data[\"auditEntityId\"] = this.auditEntityId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMspecsOrder {\r\n dealId?: string | undefined;\r\n dealShortId?: string | undefined;\r\n reminderSent?: moment.Moment | undefined;\r\n missingFileNotificationSent?: moment.Moment | undefined;\r\n mspecsFileIds?: string[] | undefined;\r\n caseCreated?: boolean;\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n updatedOn?: moment.Moment;\r\n status?: RealEstateOrderStatus;\r\n addOns?: AddOn[] | undefined;\r\n contractMethod?: RealEstateOrderContractMethod;\r\n comment?: string | undefined;\r\n realEstateObjectId?: string | undefined;\r\n realEstateObject?: RealEstateObjectDbModel;\r\n easyFileIds?: string[] | undefined;\r\n easyCaseId?: string | undefined;\r\n rebelOrderId?: number | undefined;\r\n auditEntityId?: string | undefined;\r\n}\r\n\r\nexport class MspecsFileCategory implements IMspecsFileCategory {\r\n constant?: string | undefined;\r\n translation?: string | undefined;\r\n\r\n constructor(data?: IMspecsFileCategory) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.constant = _data[\"constant\"];\r\n this.translation = _data[\"translation\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MspecsFileCategory {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MspecsFileCategory();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"constant\"] = this.constant;\r\n data[\"translation\"] = this.translation;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMspecsFileCategory {\r\n constant?: string | undefined;\r\n translation?: string | undefined;\r\n}\r\n\r\nexport class MspecsFile implements IMspecsFile {\r\n id?: string | undefined;\r\n title?: string | undefined;\r\n description?: string | undefined;\r\n createdDate?: moment.Moment;\r\n extension?: string | undefined;\r\n mimeType?: string | undefined;\r\n originalUrl?: string | undefined;\r\n category?: MspecsFileCategory;\r\n\r\n constructor(data?: IMspecsFile) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.title = _data[\"title\"];\r\n this.description = _data[\"description\"];\r\n this.createdDate = _data[\"createdDate\"] ? moment(_data[\"createdDate\"].toString()) : undefined;\r\n this.extension = _data[\"extension\"];\r\n this.mimeType = _data[\"mimeType\"];\r\n this.originalUrl = _data[\"originalUrl\"];\r\n this.category = _data[\"category\"] ? MspecsFileCategory.fromJS(_data[\"category\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): MspecsFile {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MspecsFile();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"title\"] = this.title;\r\n data[\"description\"] = this.description;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString() : undefined;\r\n data[\"extension\"] = this.extension;\r\n data[\"mimeType\"] = this.mimeType;\r\n data[\"originalUrl\"] = this.originalUrl;\r\n data[\"category\"] = this.category ? this.category.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMspecsFile {\r\n id?: string | undefined;\r\n title?: string | undefined;\r\n description?: string | undefined;\r\n createdDate?: moment.Moment;\r\n extension?: string | undefined;\r\n mimeType?: string | undefined;\r\n originalUrl?: string | undefined;\r\n category?: MspecsFileCategory;\r\n}\r\n\r\nexport class MspecsCompleteOrderRequest implements IMspecsCompleteOrderRequest {\r\n fileIds?: string[] | undefined;\r\n\r\n constructor(data?: IMspecsCompleteOrderRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"fileIds\"])) {\r\n this.fileIds = [] as any;\r\n for (let item of _data[\"fileIds\"])\r\n this.fileIds!.push(item);\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): MspecsCompleteOrderRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MspecsCompleteOrderRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.fileIds)) {\r\n data[\"fileIds\"] = [];\r\n for (let item of this.fileIds)\r\n data[\"fileIds\"].push(item);\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMspecsCompleteOrderRequest {\r\n fileIds?: string[] | undefined;\r\n}\r\n\r\nexport class BankIdInitResponse implements IBankIdInitResponse {\r\n autoStartToken?: string | undefined;\r\n orderRef?: string | undefined;\r\n qrCodeBase64Encoded?: string | undefined;\r\n state?: string | undefined;\r\n\r\n constructor(data?: IBankIdInitResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.autoStartToken = _data[\"autoStartToken\"];\r\n this.orderRef = _data[\"orderRef\"];\r\n this.qrCodeBase64Encoded = _data[\"qrCodeBase64Encoded\"];\r\n this.state = _data[\"state\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BankIdInitResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BankIdInitResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"autoStartToken\"] = this.autoStartToken;\r\n data[\"orderRef\"] = this.orderRef;\r\n data[\"qrCodeBase64Encoded\"] = this.qrCodeBase64Encoded;\r\n data[\"state\"] = this.state;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBankIdInitResponse {\r\n autoStartToken?: string | undefined;\r\n orderRef?: string | undefined;\r\n qrCodeBase64Encoded?: string | undefined;\r\n state?: string | undefined;\r\n}\r\n\r\nexport enum CollectStatus {\r\n Unknown = \"Unknown\",\r\n Pending = \"Pending\",\r\n Failed = \"Failed\",\r\n Complete = \"Complete\",\r\n}\r\n\r\nexport class User implements IUser {\r\n pid?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n company?: string | undefined;\r\n customerId?: string | undefined;\r\n\r\n constructor(data?: IUser) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.pid = _data[\"pid\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.company = _data[\"company\"];\r\n this.customerId = _data[\"customerId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): User {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new User();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"pid\"] = this.pid;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"company\"] = this.company;\r\n data[\"customerId\"] = this.customerId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUser {\r\n pid?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n company?: string | undefined;\r\n customerId?: string | undefined;\r\n}\r\n\r\nexport class StatusResponse implements IStatusResponse {\r\n status?: CollectStatus;\r\n qrCodeBase64Encoded?: string | undefined;\r\n message?: string | undefined;\r\n token?: string | undefined;\r\n user?: User;\r\n signatureId?: string;\r\n\r\n constructor(data?: IStatusResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.status = _data[\"status\"];\r\n this.qrCodeBase64Encoded = _data[\"qrCodeBase64Encoded\"];\r\n this.message = _data[\"message\"];\r\n this.token = _data[\"token\"];\r\n this.user = _data[\"user\"] ? User.fromJS(_data[\"user\"]) : undefined;\r\n this.signatureId = _data[\"signatureId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): StatusResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new StatusResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"status\"] = this.status;\r\n data[\"qrCodeBase64Encoded\"] = this.qrCodeBase64Encoded;\r\n data[\"message\"] = this.message;\r\n data[\"token\"] = this.token;\r\n data[\"user\"] = this.user ? this.user.toJSON() : undefined;\r\n data[\"signatureId\"] = this.signatureId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IStatusResponse {\r\n status?: CollectStatus;\r\n qrCodeBase64Encoded?: string | undefined;\r\n message?: string | undefined;\r\n token?: string | undefined;\r\n user?: User;\r\n signatureId?: string;\r\n}\r\n\r\nexport enum Status {\r\n NEW = \"NEW\",\r\n WARRENT = \"WARRENT\",\r\n WARRENT_MOVE = \"WARRENT_MOVE\",\r\n MOVE_REG = \"MOVE_REG\",\r\n SERVICE = \"SERVICE\",\r\n COMPLETION = \"COMPLETION\",\r\n ABORTED = \"ABORTED\",\r\n DONE = \"DONE\",\r\n}\r\n\r\nexport enum ContactChannel {\r\n MAIL = \"MAIL\",\r\n SMS = \"SMS\",\r\n PHONE = \"PHONE\",\r\n}\r\n\r\nexport enum ContactType {\r\n LEAD = \"LEAD\",\r\n REALESTATESELLER = \"REALESTATESELLER\",\r\n CUSTOMER = \"CUSTOMER\",\r\n}\r\n\r\nexport class Contact implements IContact {\r\n id?: string;\r\n pid?: string | undefined;\r\n mobile?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n email?: string | undefined;\r\n contactChannel?: ContactChannel;\r\n createdOn?: moment.Moment;\r\n customText?: string | undefined;\r\n contactType?: ContactType;\r\n\r\n constructor(data?: IContact) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.pid = _data[\"pid\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.street = _data[\"street\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.email = _data[\"email\"];\r\n this.contactChannel = _data[\"contactChannel\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.customText = _data[\"customText\"];\r\n this.contactType = _data[\"contactType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Contact {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Contact();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"pid\"] = this.pid;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"street\"] = this.street;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"email\"] = this.email;\r\n data[\"contactChannel\"] = this.contactChannel;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"customText\"] = this.customText;\r\n data[\"contactType\"] = this.contactType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IContact {\r\n id?: string;\r\n pid?: string | undefined;\r\n mobile?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n email?: string | undefined;\r\n contactChannel?: ContactChannel;\r\n createdOn?: moment.Moment;\r\n customText?: string | undefined;\r\n contactType?: ContactType;\r\n}\r\n\r\nexport enum RealEstateChannel {\r\n V = \"V\",\r\n Q = \"Q\",\r\n F = \"F\",\r\n}\r\n\r\nexport class Signature implements ISignature {\r\n id?: string;\r\n pid?: string | undefined;\r\n orderRef?: string | undefined;\r\n createdOn?: moment.Moment;\r\n completedOn?: moment.Moment | undefined;\r\n ocspResponse?: string | undefined;\r\n signatureData?: string | undefined;\r\n userVisibleData?: string | undefined;\r\n initiatedIP?: string | undefined;\r\n signedIP?: string | undefined;\r\n environmentType?: string | undefined;\r\n environmentDeviceInfo?: string | undefined;\r\n clientVersion?: string | undefined;\r\n\r\n constructor(data?: ISignature) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.pid = _data[\"pid\"];\r\n this.orderRef = _data[\"orderRef\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.completedOn = _data[\"completedOn\"] ? moment(_data[\"completedOn\"].toString()) : undefined;\r\n this.ocspResponse = _data[\"ocspResponse\"];\r\n this.signatureData = _data[\"signatureData\"];\r\n this.userVisibleData = _data[\"userVisibleData\"];\r\n this.initiatedIP = _data[\"initiatedIP\"];\r\n this.signedIP = _data[\"signedIP\"];\r\n this.environmentType = _data[\"environmentType\"];\r\n this.environmentDeviceInfo = _data[\"environmentDeviceInfo\"];\r\n this.clientVersion = _data[\"clientVersion\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Signature {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Signature();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"pid\"] = this.pid;\r\n data[\"orderRef\"] = this.orderRef;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"completedOn\"] = this.completedOn ? this.completedOn.toISOString() : undefined;\r\n data[\"ocspResponse\"] = this.ocspResponse;\r\n data[\"signatureData\"] = this.signatureData;\r\n data[\"userVisibleData\"] = this.userVisibleData;\r\n data[\"initiatedIP\"] = this.initiatedIP;\r\n data[\"signedIP\"] = this.signedIP;\r\n data[\"environmentType\"] = this.environmentType;\r\n data[\"environmentDeviceInfo\"] = this.environmentDeviceInfo;\r\n data[\"clientVersion\"] = this.clientVersion;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISignature {\r\n id?: string;\r\n pid?: string | undefined;\r\n orderRef?: string | undefined;\r\n createdOn?: moment.Moment;\r\n completedOn?: moment.Moment | undefined;\r\n ocspResponse?: string | undefined;\r\n signatureData?: string | undefined;\r\n userVisibleData?: string | undefined;\r\n initiatedIP?: string | undefined;\r\n signedIP?: string | undefined;\r\n environmentType?: string | undefined;\r\n environmentDeviceInfo?: string | undefined;\r\n clientVersion?: string | undefined;\r\n}\r\n\r\nexport enum AddOnStatus {\r\n PENDING = \"PENDING\",\r\n ACCEPTED = \"ACCEPTED\",\r\n REJECTED = \"REJECTED\",\r\n}\r\n\r\nexport enum CompletionType {\r\n Confirmation = \"Confirmation\",\r\n UnknownCustomer = \"UnknownCustomer\",\r\n UnknownProperty = \"UnknownProperty\",\r\n}\r\n\r\nexport class Order implements IOrder {\r\n id?: number;\r\n pid?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n phone?: string | undefined;\r\n email?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n ean?: string | undefined;\r\n isCurrent?: boolean;\r\n currentFirstName?: string | undefined;\r\n currentLastName?: string | undefined;\r\n startDate?: moment.Moment;\r\n housing?: Housing;\r\n area?: number | undefined;\r\n consumption?: number | undefined;\r\n channel?: Channel;\r\n status?: Status;\r\n ip?: string | undefined;\r\n salesperson?: string | undefined;\r\n externalID?: string | undefined;\r\n parentID?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n createdInCrm?: boolean;\r\n elavtalsserviceId?: string | undefined;\r\n realEstateAgentId?: string | undefined;\r\n realEstateAgent?: RealEstateAgentModel;\r\n realEstateOfficeId?: string | undefined;\r\n realEstateOffice?: RealEstateOfficeModel;\r\n realEstateChainId?: string | undefined;\r\n realEstateChain?: RealEstateChainModel;\r\n contactId?: string | undefined;\r\n contact?: Contact;\r\n offerId?: string | undefined;\r\n club?: string | undefined;\r\n team?: string | undefined;\r\n salesData1?: string | undefined;\r\n salesData2?: string | undefined;\r\n salesData3?: string | undefined;\r\n salesData4?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n objectId?: string | undefined;\r\n objectChannel?: RealEstateChannel;\r\n objectCustomerId?: string | undefined;\r\n objectStatus?: string | undefined;\r\n objectStatusText?: string | undefined;\r\n lmvNumber?: string | undefined;\r\n internalPropertyNumber?: string | undefined;\r\n signatureId?: string | undefined;\r\n signature?: Signature;\r\n easyQuoteId?: string | undefined;\r\n hasElectricity?: boolean;\r\n hasInsurance?: boolean;\r\n insuranceStatus?: AddOnStatus;\r\n insuranceStatusDate?: moment.Moment | undefined;\r\n hasMortgage?: boolean;\r\n mortgageStatus?: AddOnStatus;\r\n mortgageStatusDate?: moment.Moment | undefined;\r\n createdBy?: string | undefined;\r\n completionType?: CompletionType;\r\n completionId?: string | undefined;\r\n completionContactTypeId?: string | undefined;\r\n completionContactFirstName?: string | undefined;\r\n completionContactLastName?: string | undefined;\r\n completionSalesChannelName?: string | undefined;\r\n insuranceReminderSent?: boolean;\r\n notes?: string | undefined;\r\n customerType?: CustomerType;\r\n readonly auditEntityId?: string | undefined;\r\n\r\n constructor(data?: IOrder) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.pid = _data[\"pid\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.phone = _data[\"phone\"];\r\n this.email = _data[\"email\"];\r\n this.street = _data[\"street\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.ean = _data[\"ean\"];\r\n this.isCurrent = _data[\"isCurrent\"];\r\n this.currentFirstName = _data[\"currentFirstName\"];\r\n this.currentLastName = _data[\"currentLastName\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.housing = _data[\"housing\"];\r\n this.area = _data[\"area\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.channel = _data[\"channel\"];\r\n this.status = _data[\"status\"];\r\n this.ip = _data[\"ip\"];\r\n this.salesperson = _data[\"salesperson\"];\r\n this.externalID = _data[\"externalID\"];\r\n this.parentID = _data[\"parentID\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n this.createdInCrm = _data[\"createdInCrm\"];\r\n this.elavtalsserviceId = _data[\"elavtalsserviceId\"];\r\n this.realEstateAgentId = _data[\"realEstateAgentId\"];\r\n this.realEstateAgent = _data[\"realEstateAgent\"] ? RealEstateAgentModel.fromJS(_data[\"realEstateAgent\"]) : undefined;\r\n this.realEstateOfficeId = _data[\"realEstateOfficeId\"];\r\n this.realEstateOffice = _data[\"realEstateOffice\"] ? RealEstateOfficeModel.fromJS(_data[\"realEstateOffice\"]) : undefined;\r\n this.realEstateChainId = _data[\"realEstateChainId\"];\r\n this.realEstateChain = _data[\"realEstateChain\"] ? RealEstateChainModel.fromJS(_data[\"realEstateChain\"]) : undefined;\r\n this.contactId = _data[\"contactId\"];\r\n this.contact = _data[\"contact\"] ? Contact.fromJS(_data[\"contact\"]) : undefined;\r\n this.offerId = _data[\"offerId\"];\r\n this.club = _data[\"club\"];\r\n this.team = _data[\"team\"];\r\n this.salesData1 = _data[\"salesData1\"];\r\n this.salesData2 = _data[\"salesData2\"];\r\n this.salesData3 = _data[\"salesData3\"];\r\n this.salesData4 = _data[\"salesData4\"];\r\n this.salesDate = _data[\"salesDate\"] ? moment(_data[\"salesDate\"].toString()) : undefined;\r\n this.objectId = _data[\"objectId\"];\r\n this.objectChannel = _data[\"objectChannel\"];\r\n this.objectCustomerId = _data[\"objectCustomerId\"];\r\n this.objectStatus = _data[\"objectStatus\"];\r\n this.objectStatusText = _data[\"objectStatusText\"];\r\n this.lmvNumber = _data[\"lmvNumber\"];\r\n this.internalPropertyNumber = _data[\"internalPropertyNumber\"];\r\n this.signatureId = _data[\"signatureId\"];\r\n this.signature = _data[\"signature\"] ? Signature.fromJS(_data[\"signature\"]) : undefined;\r\n this.easyQuoteId = _data[\"easyQuoteId\"];\r\n this.hasElectricity = _data[\"hasElectricity\"];\r\n this.hasInsurance = _data[\"hasInsurance\"];\r\n this.insuranceStatus = _data[\"insuranceStatus\"];\r\n this.insuranceStatusDate = _data[\"insuranceStatusDate\"] ? moment(_data[\"insuranceStatusDate\"].toString()) : undefined;\r\n this.hasMortgage = _data[\"hasMortgage\"];\r\n this.mortgageStatus = _data[\"mortgageStatus\"];\r\n this.mortgageStatusDate = _data[\"mortgageStatusDate\"] ? moment(_data[\"mortgageStatusDate\"].toString()) : undefined;\r\n this.createdBy = _data[\"createdBy\"];\r\n this.completionType = _data[\"completionType\"];\r\n this.completionId = _data[\"completionId\"];\r\n this.completionContactTypeId = _data[\"completionContactTypeId\"];\r\n this.completionContactFirstName = _data[\"completionContactFirstName\"];\r\n this.completionContactLastName = _data[\"completionContactLastName\"];\r\n this.completionSalesChannelName = _data[\"completionSalesChannelName\"];\r\n this.insuranceReminderSent = _data[\"insuranceReminderSent\"];\r\n this.notes = _data[\"notes\"];\r\n this.customerType = _data[\"customerType\"];\r\n (this).auditEntityId = _data[\"auditEntityId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Order {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Order();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"pid\"] = this.pid;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"phone\"] = this.phone;\r\n data[\"email\"] = this.email;\r\n data[\"street\"] = this.street;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"ean\"] = this.ean;\r\n data[\"isCurrent\"] = this.isCurrent;\r\n data[\"currentFirstName\"] = this.currentFirstName;\r\n data[\"currentLastName\"] = this.currentLastName;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"housing\"] = this.housing;\r\n data[\"area\"] = this.area;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"channel\"] = this.channel;\r\n data[\"status\"] = this.status;\r\n data[\"ip\"] = this.ip;\r\n data[\"salesperson\"] = this.salesperson;\r\n data[\"externalID\"] = this.externalID;\r\n data[\"parentID\"] = this.parentID;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n data[\"createdInCrm\"] = this.createdInCrm;\r\n data[\"elavtalsserviceId\"] = this.elavtalsserviceId;\r\n data[\"realEstateAgentId\"] = this.realEstateAgentId;\r\n data[\"realEstateAgent\"] = this.realEstateAgent ? this.realEstateAgent.toJSON() : undefined;\r\n data[\"realEstateOfficeId\"] = this.realEstateOfficeId;\r\n data[\"realEstateOffice\"] = this.realEstateOffice ? this.realEstateOffice.toJSON() : undefined;\r\n data[\"realEstateChainId\"] = this.realEstateChainId;\r\n data[\"realEstateChain\"] = this.realEstateChain ? this.realEstateChain.toJSON() : undefined;\r\n data[\"contactId\"] = this.contactId;\r\n data[\"contact\"] = this.contact ? this.contact.toJSON() : undefined;\r\n data[\"offerId\"] = this.offerId;\r\n data[\"club\"] = this.club;\r\n data[\"team\"] = this.team;\r\n data[\"salesData1\"] = this.salesData1;\r\n data[\"salesData2\"] = this.salesData2;\r\n data[\"salesData3\"] = this.salesData3;\r\n data[\"salesData4\"] = this.salesData4;\r\n data[\"salesDate\"] = this.salesDate ? this.salesDate.toISOString() : undefined;\r\n data[\"objectId\"] = this.objectId;\r\n data[\"objectChannel\"] = this.objectChannel;\r\n data[\"objectCustomerId\"] = this.objectCustomerId;\r\n data[\"objectStatus\"] = this.objectStatus;\r\n data[\"objectStatusText\"] = this.objectStatusText;\r\n data[\"lmvNumber\"] = this.lmvNumber;\r\n data[\"internalPropertyNumber\"] = this.internalPropertyNumber;\r\n data[\"signatureId\"] = this.signatureId;\r\n data[\"signature\"] = this.signature ? this.signature.toJSON() : undefined;\r\n data[\"easyQuoteId\"] = this.easyQuoteId;\r\n data[\"hasElectricity\"] = this.hasElectricity;\r\n data[\"hasInsurance\"] = this.hasInsurance;\r\n data[\"insuranceStatus\"] = this.insuranceStatus;\r\n data[\"insuranceStatusDate\"] = this.insuranceStatusDate ? this.insuranceStatusDate.toISOString() : undefined;\r\n data[\"hasMortgage\"] = this.hasMortgage;\r\n data[\"mortgageStatus\"] = this.mortgageStatus;\r\n data[\"mortgageStatusDate\"] = this.mortgageStatusDate ? this.mortgageStatusDate.toISOString() : undefined;\r\n data[\"createdBy\"] = this.createdBy;\r\n data[\"completionType\"] = this.completionType;\r\n data[\"completionId\"] = this.completionId;\r\n data[\"completionContactTypeId\"] = this.completionContactTypeId;\r\n data[\"completionContactFirstName\"] = this.completionContactFirstName;\r\n data[\"completionContactLastName\"] = this.completionContactLastName;\r\n data[\"completionSalesChannelName\"] = this.completionSalesChannelName;\r\n data[\"insuranceReminderSent\"] = this.insuranceReminderSent;\r\n data[\"notes\"] = this.notes;\r\n data[\"customerType\"] = this.customerType;\r\n data[\"auditEntityId\"] = this.auditEntityId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrder {\r\n id?: number;\r\n pid?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n phone?: string | undefined;\r\n email?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n ean?: string | undefined;\r\n isCurrent?: boolean;\r\n currentFirstName?: string | undefined;\r\n currentLastName?: string | undefined;\r\n startDate?: moment.Moment;\r\n housing?: Housing;\r\n area?: number | undefined;\r\n consumption?: number | undefined;\r\n channel?: Channel;\r\n status?: Status;\r\n ip?: string | undefined;\r\n salesperson?: string | undefined;\r\n externalID?: string | undefined;\r\n parentID?: string | undefined;\r\n createdOn?: moment.Moment;\r\n modifiedOn?: moment.Moment;\r\n createdInCrm?: boolean;\r\n elavtalsserviceId?: string | undefined;\r\n realEstateAgentId?: string | undefined;\r\n realEstateAgent?: RealEstateAgentModel;\r\n realEstateOfficeId?: string | undefined;\r\n realEstateOffice?: RealEstateOfficeModel;\r\n realEstateChainId?: string | undefined;\r\n realEstateChain?: RealEstateChainModel;\r\n contactId?: string | undefined;\r\n contact?: Contact;\r\n offerId?: string | undefined;\r\n club?: string | undefined;\r\n team?: string | undefined;\r\n salesData1?: string | undefined;\r\n salesData2?: string | undefined;\r\n salesData3?: string | undefined;\r\n salesData4?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n objectId?: string | undefined;\r\n objectChannel?: RealEstateChannel;\r\n objectCustomerId?: string | undefined;\r\n objectStatus?: string | undefined;\r\n objectStatusText?: string | undefined;\r\n lmvNumber?: string | undefined;\r\n internalPropertyNumber?: string | undefined;\r\n signatureId?: string | undefined;\r\n signature?: Signature;\r\n easyQuoteId?: string | undefined;\r\n hasElectricity?: boolean;\r\n hasInsurance?: boolean;\r\n insuranceStatus?: AddOnStatus;\r\n insuranceStatusDate?: moment.Moment | undefined;\r\n hasMortgage?: boolean;\r\n mortgageStatus?: AddOnStatus;\r\n mortgageStatusDate?: moment.Moment | undefined;\r\n createdBy?: string | undefined;\r\n completionType?: CompletionType;\r\n completionId?: string | undefined;\r\n completionContactTypeId?: string | undefined;\r\n completionContactFirstName?: string | undefined;\r\n completionContactLastName?: string | undefined;\r\n completionSalesChannelName?: string | undefined;\r\n insuranceReminderSent?: boolean;\r\n notes?: string | undefined;\r\n customerType?: CustomerType;\r\n auditEntityId?: string | undefined;\r\n}\r\n\r\nexport class SignInitiateRequest implements ISignInitiateRequest {\r\n order?: Order;\r\n\r\n constructor(data?: ISignInitiateRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.order = _data[\"order\"] ? Order.fromJS(_data[\"order\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): SignInitiateRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SignInitiateRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"order\"] = this.order ? this.order.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISignInitiateRequest {\r\n order?: Order;\r\n}\r\n\r\nexport class TokenResponse implements ITokenResponse {\r\n sentTo?: string | undefined;\r\n completed?: boolean;\r\n\r\n constructor(data?: ITokenResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.sentTo = _data[\"sentTo\"];\r\n this.completed = _data[\"completed\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): TokenResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new TokenResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"sentTo\"] = this.sentTo;\r\n data[\"completed\"] = this.completed;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ITokenResponse {\r\n sentTo?: string | undefined;\r\n completed?: boolean;\r\n}\r\n\r\nexport class AuthenticationResponse implements IAuthenticationResponse {\r\n token?: string | undefined;\r\n\r\n constructor(data?: IAuthenticationResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AuthenticationResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AuthenticationResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAuthenticationResponse {\r\n token?: string | undefined;\r\n}\r\n\r\nexport class BankIdUiApiInitializeRequest implements IBankIdUiApiInitializeRequest {\r\n returnUrl!: string | undefined;\r\n uiOptions!: string | undefined;\r\n\r\n constructor(data?: IBankIdUiApiInitializeRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.uiOptions = _data[\"uiOptions\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BankIdUiApiInitializeRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BankIdUiApiInitializeRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"uiOptions\"] = this.uiOptions;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBankIdUiApiInitializeRequest {\r\n returnUrl: string | undefined;\r\n uiOptions: string | undefined;\r\n}\r\n\r\nexport class BankIdUiApiInitializeResponse implements IBankIdUiApiInitializeResponse {\r\n readonly isAutoLaunch?: boolean;\r\n readonly deviceMightRequireUserInteractionToLaunchBankIdApp?: boolean;\r\n readonly checkStatus?: boolean;\r\n readonly orderRef?: string | undefined;\r\n readonly redirectUri?: string | undefined;\r\n qrStartState?: string | undefined;\r\n qrCodeAsBase64?: string | undefined;\r\n\r\n constructor(data?: IBankIdUiApiInitializeResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n (this).isAutoLaunch = _data[\"isAutoLaunch\"];\r\n (this).deviceMightRequireUserInteractionToLaunchBankIdApp = _data[\"deviceMightRequireUserInteractionToLaunchBankIdApp\"];\r\n (this).checkStatus = _data[\"checkStatus\"];\r\n (this).orderRef = _data[\"orderRef\"];\r\n (this).redirectUri = _data[\"redirectUri\"];\r\n this.qrStartState = _data[\"qrStartState\"];\r\n this.qrCodeAsBase64 = _data[\"qrCodeAsBase64\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BankIdUiApiInitializeResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BankIdUiApiInitializeResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isAutoLaunch\"] = this.isAutoLaunch;\r\n data[\"deviceMightRequireUserInteractionToLaunchBankIdApp\"] = this.deviceMightRequireUserInteractionToLaunchBankIdApp;\r\n data[\"checkStatus\"] = this.checkStatus;\r\n data[\"orderRef\"] = this.orderRef;\r\n data[\"redirectUri\"] = this.redirectUri;\r\n data[\"qrStartState\"] = this.qrStartState;\r\n data[\"qrCodeAsBase64\"] = this.qrCodeAsBase64;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBankIdUiApiInitializeResponse {\r\n isAutoLaunch?: boolean;\r\n deviceMightRequireUserInteractionToLaunchBankIdApp?: boolean;\r\n checkStatus?: boolean;\r\n orderRef?: string | undefined;\r\n redirectUri?: string | undefined;\r\n qrStartState?: string | undefined;\r\n qrCodeAsBase64?: string | undefined;\r\n}\r\n\r\nexport class BankIdUiApiStatusRequest implements IBankIdUiApiStatusRequest {\r\n orderRef!: string | undefined;\r\n returnUrl!: string | undefined;\r\n uiOptions!: string | undefined;\r\n autoStartAttempts?: number;\r\n\r\n constructor(data?: IBankIdUiApiStatusRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderRef = _data[\"orderRef\"];\r\n this.returnUrl = _data[\"returnUrl\"];\r\n this.uiOptions = _data[\"uiOptions\"];\r\n this.autoStartAttempts = _data[\"autoStartAttempts\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BankIdUiApiStatusRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BankIdUiApiStatusRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderRef\"] = this.orderRef;\r\n data[\"returnUrl\"] = this.returnUrl;\r\n data[\"uiOptions\"] = this.uiOptions;\r\n data[\"autoStartAttempts\"] = this.autoStartAttempts;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBankIdUiApiStatusRequest {\r\n orderRef: string | undefined;\r\n returnUrl: string | undefined;\r\n uiOptions: string | undefined;\r\n autoStartAttempts?: number;\r\n}\r\n\r\nexport class BankIdUiApiQrCodeRequest implements IBankIdUiApiQrCodeRequest {\r\n qrStartState!: string | undefined;\r\n\r\n constructor(data?: IBankIdUiApiQrCodeRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.qrStartState = _data[\"qrStartState\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BankIdUiApiQrCodeRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BankIdUiApiQrCodeRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"qrStartState\"] = this.qrStartState;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBankIdUiApiQrCodeRequest {\r\n qrStartState: string | undefined;\r\n}\r\n\r\nexport class BankIdUiApiCancelRequest implements IBankIdUiApiCancelRequest {\r\n uiOptions!: string | undefined;\r\n orderRef!: string | undefined;\r\n\r\n constructor(data?: IBankIdUiApiCancelRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.uiOptions = _data[\"uiOptions\"];\r\n this.orderRef = _data[\"orderRef\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): BankIdUiApiCancelRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new BankIdUiApiCancelRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"uiOptions\"] = this.uiOptions;\r\n data[\"orderRef\"] = this.orderRef;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBankIdUiApiCancelRequest {\r\n uiOptions: string | undefined;\r\n orderRef: string | undefined;\r\n}\r\n\r\nexport class EasyLead implements IEasyLead {\r\n id?: string;\r\n name?: string | undefined;\r\n email?: string | undefined;\r\n phone?: string | undefined;\r\n notes?: string | undefined;\r\n ip?: string | undefined;\r\n\r\n constructor(data?: IEasyLead) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.email = _data[\"email\"];\r\n this.phone = _data[\"phone\"];\r\n this.notes = _data[\"notes\"];\r\n this.ip = _data[\"ip\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EasyLead {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EasyLead();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"email\"] = this.email;\r\n data[\"phone\"] = this.phone;\r\n data[\"notes\"] = this.notes;\r\n data[\"ip\"] = this.ip;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEasyLead {\r\n id?: string;\r\n name?: string | undefined;\r\n email?: string | undefined;\r\n phone?: string | undefined;\r\n notes?: string | undefined;\r\n ip?: string | undefined;\r\n}\r\n\r\nexport class EasyPriceResponse implements IEasyPriceResponse {\r\n name?: string | undefined;\r\n fixedPrice?: number;\r\n pricePerDelivery?: number;\r\n monthlyCostPerDelivery?: number;\r\n\r\n constructor(data?: IEasyPriceResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.fixedPrice = _data[\"fixedPrice\"];\r\n this.pricePerDelivery = _data[\"pricePerDelivery\"];\r\n this.monthlyCostPerDelivery = _data[\"monthlyCostPerDelivery\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EasyPriceResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EasyPriceResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"fixedPrice\"] = this.fixedPrice;\r\n data[\"pricePerDelivery\"] = this.pricePerDelivery;\r\n data[\"monthlyCostPerDelivery\"] = this.monthlyCostPerDelivery;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEasyPriceResponse {\r\n name?: string | undefined;\r\n fixedPrice?: number;\r\n pricePerDelivery?: number;\r\n monthlyCostPerDelivery?: number;\r\n}\r\n\r\nexport class VehicleModel implements IVehicleModel {\r\n id?: string | undefined;\r\n userId?: string | undefined;\r\n vendor?: string | undefined;\r\n lastSeen?: moment.Moment;\r\n isReachable?: boolean;\r\n vin?: string | undefined;\r\n brand?: string | undefined;\r\n model?: string | undefined;\r\n year?: number;\r\n batteryLevel?: number;\r\n range?: number;\r\n isPluggedIn?: boolean;\r\n isCharging?: boolean;\r\n isFullyCharged?: boolean;\r\n batteryCapacity?: number;\r\n chargeLimit?: number;\r\n chargeRate?: number;\r\n chargeRemainingTime?: number;\r\n chargeStateLastUpdated?: moment.Moment;\r\n maxCurrent?: number;\r\n powerDeliveryState?: string | undefined;\r\n smartChargingEnabled?: boolean;\r\n smartChargingDeadline?: string | undefined;\r\n smartChargingUpdatedAt?: moment.Moment | undefined;\r\n smartChargingVendor?: string | undefined;\r\n smartChargingState?: string | undefined;\r\n smartChargingStateChanged?: moment.Moment | undefined;\r\n smartChargingConsiderationIsPluggedIn?: boolean | undefined;\r\n smartChargingConsiderationIsCharging?: boolean | undefined;\r\n smartChargingConsiderationAtChargingLocation?: boolean | undefined;\r\n smartChargingConsiderationHasTimeEstimate?: boolean | undefined;\r\n smartChargingPlanCurrency?: string | undefined;\r\n smartChargingPlanNonSmartCost?: number | undefined;\r\n smartChargingPlanSmartCost?: number | undefined;\r\n smartChargingPlanStopAt?: moment.Moment | undefined;\r\n smartChargingPlanStartAt?: moment.Moment | undefined;\r\n smartChargingPlanEstimatedFinishAt?: moment.Moment | undefined;\r\n smartChargingPlanStopConfirmedAt?: moment.Moment | undefined;\r\n smartChargingPlanStartConfirmedAt?: moment.Moment | undefined;\r\n smartChargingPlanEndedAt?: moment.Moment | undefined;\r\n smartChargingPlanFinalState?: string | undefined;\r\n smartChargingPlanFailureCondition?: string | undefined;\r\n smartChargingPlanExternalStartCreatedAt?: moment.Moment | undefined;\r\n smartChargingPlanExternalStartEndedAt?: moment.Moment | undefined;\r\n smartChargingPlanExternalStartTargetType?: string | undefined;\r\n smartChargingPlanExternalStartTargetId?: string | undefined;\r\n smartChargingPlanExternalStartVendorActionId?: string | undefined;\r\n smartChargingPlanChargingLocationId?: string | undefined;\r\n smartChargingSmartOverrideCreatedAt?: moment.Moment | undefined;\r\n smartChargingSmartOverrideEndedAt?: moment.Moment | undefined;\r\n smartChargingSmartOverrideTargetType?: string | undefined;\r\n smartChargingSmartOverrideTargetId?: string | undefined;\r\n smartChargingSmartOverrideVendorActionId?: string | undefined;\r\n minimumChargeLimit?: number;\r\n longitude?: number;\r\n latitude?: number;\r\n locationLastUpdated?: moment.Moment;\r\n odometerDistance?: number;\r\n odometerLastUpdated?: moment.Moment;\r\n informationCapable?: boolean;\r\n informationInterventionIds?: string[] | undefined;\r\n chargeStateCapable?: boolean;\r\n chargeStateInterventionIds?: string[] | undefined;\r\n locationCapable?: boolean;\r\n locationInterventionIds?: string[] | undefined;\r\n odometerCapable?: boolean;\r\n odometerInterventionIds?: string[] | undefined;\r\n setMaxCurrentCapable?: boolean;\r\n setMaxCurrentInterventionIds?: string[] | undefined;\r\n startChargingCapable?: boolean;\r\n startChargingInterventionIds?: string[] | undefined;\r\n stopChargingCapable?: boolean;\r\n stopChargingInterventionIds?: string[] | undefined;\r\n smartChargingCapable?: boolean;\r\n smartChargingInterventionIds?: string[] | undefined;\r\n scopes?: string | undefined;\r\n locationId?: string | undefined;\r\n createdOn?: moment.Moment;\r\n updatedOn?: moment.Moment;\r\n deleted?: boolean;\r\n reliability?: string | undefined;\r\n credentialsInvalidated?: boolean;\r\n\r\n constructor(data?: IVehicleModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.userId = _data[\"userId\"];\r\n this.vendor = _data[\"vendor\"];\r\n this.lastSeen = _data[\"lastSeen\"] ? moment(_data[\"lastSeen\"].toString()) : undefined;\r\n this.isReachable = _data[\"isReachable\"];\r\n this.vin = _data[\"vin\"];\r\n this.brand = _data[\"brand\"];\r\n this.model = _data[\"model\"];\r\n this.year = _data[\"year\"];\r\n this.batteryLevel = _data[\"batteryLevel\"];\r\n this.range = _data[\"range\"];\r\n this.isPluggedIn = _data[\"isPluggedIn\"];\r\n this.isCharging = _data[\"isCharging\"];\r\n this.isFullyCharged = _data[\"isFullyCharged\"];\r\n this.batteryCapacity = _data[\"batteryCapacity\"];\r\n this.chargeLimit = _data[\"chargeLimit\"];\r\n this.chargeRate = _data[\"chargeRate\"];\r\n this.chargeRemainingTime = _data[\"chargeRemainingTime\"];\r\n this.chargeStateLastUpdated = _data[\"chargeStateLastUpdated\"] ? moment(_data[\"chargeStateLastUpdated\"].toString()) : undefined;\r\n this.maxCurrent = _data[\"maxCurrent\"];\r\n this.powerDeliveryState = _data[\"powerDeliveryState\"];\r\n this.smartChargingEnabled = _data[\"smartChargingEnabled\"];\r\n this.smartChargingDeadline = _data[\"smartChargingDeadline\"];\r\n this.smartChargingUpdatedAt = _data[\"smartChargingUpdatedAt\"] ? moment(_data[\"smartChargingUpdatedAt\"].toString()) : undefined;\r\n this.smartChargingVendor = _data[\"smartChargingVendor\"];\r\n this.smartChargingState = _data[\"smartChargingState\"];\r\n this.smartChargingStateChanged = _data[\"smartChargingStateChanged\"] ? moment(_data[\"smartChargingStateChanged\"].toString()) : undefined;\r\n this.smartChargingConsiderationIsPluggedIn = _data[\"smartChargingConsiderationIsPluggedIn\"];\r\n this.smartChargingConsiderationIsCharging = _data[\"smartChargingConsiderationIsCharging\"];\r\n this.smartChargingConsiderationAtChargingLocation = _data[\"smartChargingConsiderationAtChargingLocation\"];\r\n this.smartChargingConsiderationHasTimeEstimate = _data[\"smartChargingConsiderationHasTimeEstimate\"];\r\n this.smartChargingPlanCurrency = _data[\"smartChargingPlanCurrency\"];\r\n this.smartChargingPlanNonSmartCost = _data[\"smartChargingPlanNonSmartCost\"];\r\n this.smartChargingPlanSmartCost = _data[\"smartChargingPlanSmartCost\"];\r\n this.smartChargingPlanStopAt = _data[\"smartChargingPlanStopAt\"] ? moment(_data[\"smartChargingPlanStopAt\"].toString()) : undefined;\r\n this.smartChargingPlanStartAt = _data[\"smartChargingPlanStartAt\"] ? moment(_data[\"smartChargingPlanStartAt\"].toString()) : undefined;\r\n this.smartChargingPlanEstimatedFinishAt = _data[\"smartChargingPlanEstimatedFinishAt\"] ? moment(_data[\"smartChargingPlanEstimatedFinishAt\"].toString()) : undefined;\r\n this.smartChargingPlanStopConfirmedAt = _data[\"smartChargingPlanStopConfirmedAt\"] ? moment(_data[\"smartChargingPlanStopConfirmedAt\"].toString()) : undefined;\r\n this.smartChargingPlanStartConfirmedAt = _data[\"smartChargingPlanStartConfirmedAt\"] ? moment(_data[\"smartChargingPlanStartConfirmedAt\"].toString()) : undefined;\r\n this.smartChargingPlanEndedAt = _data[\"smartChargingPlanEndedAt\"] ? moment(_data[\"smartChargingPlanEndedAt\"].toString()) : undefined;\r\n this.smartChargingPlanFinalState = _data[\"smartChargingPlanFinalState\"];\r\n this.smartChargingPlanFailureCondition = _data[\"smartChargingPlanFailureCondition\"];\r\n this.smartChargingPlanExternalStartCreatedAt = _data[\"smartChargingPlanExternalStartCreatedAt\"] ? moment(_data[\"smartChargingPlanExternalStartCreatedAt\"].toString()) : undefined;\r\n this.smartChargingPlanExternalStartEndedAt = _data[\"smartChargingPlanExternalStartEndedAt\"] ? moment(_data[\"smartChargingPlanExternalStartEndedAt\"].toString()) : undefined;\r\n this.smartChargingPlanExternalStartTargetType = _data[\"smartChargingPlanExternalStartTargetType\"];\r\n this.smartChargingPlanExternalStartTargetId = _data[\"smartChargingPlanExternalStartTargetId\"];\r\n this.smartChargingPlanExternalStartVendorActionId = _data[\"smartChargingPlanExternalStartVendorActionId\"];\r\n this.smartChargingPlanChargingLocationId = _data[\"smartChargingPlanChargingLocationId\"];\r\n this.smartChargingSmartOverrideCreatedAt = _data[\"smartChargingSmartOverrideCreatedAt\"] ? moment(_data[\"smartChargingSmartOverrideCreatedAt\"].toString()) : undefined;\r\n this.smartChargingSmartOverrideEndedAt = _data[\"smartChargingSmartOverrideEndedAt\"] ? moment(_data[\"smartChargingSmartOverrideEndedAt\"].toString()) : undefined;\r\n this.smartChargingSmartOverrideTargetType = _data[\"smartChargingSmartOverrideTargetType\"];\r\n this.smartChargingSmartOverrideTargetId = _data[\"smartChargingSmartOverrideTargetId\"];\r\n this.smartChargingSmartOverrideVendorActionId = _data[\"smartChargingSmartOverrideVendorActionId\"];\r\n this.minimumChargeLimit = _data[\"minimumChargeLimit\"];\r\n this.longitude = _data[\"longitude\"];\r\n this.latitude = _data[\"latitude\"];\r\n this.locationLastUpdated = _data[\"locationLastUpdated\"] ? moment(_data[\"locationLastUpdated\"].toString()) : undefined;\r\n this.odometerDistance = _data[\"odometerDistance\"];\r\n this.odometerLastUpdated = _data[\"odometerLastUpdated\"] ? moment(_data[\"odometerLastUpdated\"].toString()) : undefined;\r\n this.informationCapable = _data[\"informationCapable\"];\r\n if (Array.isArray(_data[\"informationInterventionIds\"])) {\r\n this.informationInterventionIds = [] as any;\r\n for (let item of _data[\"informationInterventionIds\"])\r\n this.informationInterventionIds!.push(item);\r\n }\r\n this.chargeStateCapable = _data[\"chargeStateCapable\"];\r\n if (Array.isArray(_data[\"chargeStateInterventionIds\"])) {\r\n this.chargeStateInterventionIds = [] as any;\r\n for (let item of _data[\"chargeStateInterventionIds\"])\r\n this.chargeStateInterventionIds!.push(item);\r\n }\r\n this.locationCapable = _data[\"locationCapable\"];\r\n if (Array.isArray(_data[\"locationInterventionIds\"])) {\r\n this.locationInterventionIds = [] as any;\r\n for (let item of _data[\"locationInterventionIds\"])\r\n this.locationInterventionIds!.push(item);\r\n }\r\n this.odometerCapable = _data[\"odometerCapable\"];\r\n if (Array.isArray(_data[\"odometerInterventionIds\"])) {\r\n this.odometerInterventionIds = [] as any;\r\n for (let item of _data[\"odometerInterventionIds\"])\r\n this.odometerInterventionIds!.push(item);\r\n }\r\n this.setMaxCurrentCapable = _data[\"setMaxCurrentCapable\"];\r\n if (Array.isArray(_data[\"setMaxCurrentInterventionIds\"])) {\r\n this.setMaxCurrentInterventionIds = [] as any;\r\n for (let item of _data[\"setMaxCurrentInterventionIds\"])\r\n this.setMaxCurrentInterventionIds!.push(item);\r\n }\r\n this.startChargingCapable = _data[\"startChargingCapable\"];\r\n if (Array.isArray(_data[\"startChargingInterventionIds\"])) {\r\n this.startChargingInterventionIds = [] as any;\r\n for (let item of _data[\"startChargingInterventionIds\"])\r\n this.startChargingInterventionIds!.push(item);\r\n }\r\n this.stopChargingCapable = _data[\"stopChargingCapable\"];\r\n if (Array.isArray(_data[\"stopChargingInterventionIds\"])) {\r\n this.stopChargingInterventionIds = [] as any;\r\n for (let item of _data[\"stopChargingInterventionIds\"])\r\n this.stopChargingInterventionIds!.push(item);\r\n }\r\n this.smartChargingCapable = _data[\"smartChargingCapable\"];\r\n if (Array.isArray(_data[\"smartChargingInterventionIds\"])) {\r\n this.smartChargingInterventionIds = [] as any;\r\n for (let item of _data[\"smartChargingInterventionIds\"])\r\n this.smartChargingInterventionIds!.push(item);\r\n }\r\n this.scopes = _data[\"scopes\"];\r\n this.locationId = _data[\"locationId\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.updatedOn = _data[\"updatedOn\"] ? moment(_data[\"updatedOn\"].toString()) : undefined;\r\n this.deleted = _data[\"deleted\"];\r\n this.reliability = _data[\"reliability\"];\r\n this.credentialsInvalidated = _data[\"credentialsInvalidated\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): VehicleModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VehicleModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"userId\"] = this.userId;\r\n data[\"vendor\"] = this.vendor;\r\n data[\"lastSeen\"] = this.lastSeen ? this.lastSeen.toISOString() : undefined;\r\n data[\"isReachable\"] = this.isReachable;\r\n data[\"vin\"] = this.vin;\r\n data[\"brand\"] = this.brand;\r\n data[\"model\"] = this.model;\r\n data[\"year\"] = this.year;\r\n data[\"batteryLevel\"] = this.batteryLevel;\r\n data[\"range\"] = this.range;\r\n data[\"isPluggedIn\"] = this.isPluggedIn;\r\n data[\"isCharging\"] = this.isCharging;\r\n data[\"isFullyCharged\"] = this.isFullyCharged;\r\n data[\"batteryCapacity\"] = this.batteryCapacity;\r\n data[\"chargeLimit\"] = this.chargeLimit;\r\n data[\"chargeRate\"] = this.chargeRate;\r\n data[\"chargeRemainingTime\"] = this.chargeRemainingTime;\r\n data[\"chargeStateLastUpdated\"] = this.chargeStateLastUpdated ? this.chargeStateLastUpdated.toISOString() : undefined;\r\n data[\"maxCurrent\"] = this.maxCurrent;\r\n data[\"powerDeliveryState\"] = this.powerDeliveryState;\r\n data[\"smartChargingEnabled\"] = this.smartChargingEnabled;\r\n data[\"smartChargingDeadline\"] = this.smartChargingDeadline;\r\n data[\"smartChargingUpdatedAt\"] = this.smartChargingUpdatedAt ? this.smartChargingUpdatedAt.toISOString() : undefined;\r\n data[\"smartChargingVendor\"] = this.smartChargingVendor;\r\n data[\"smartChargingState\"] = this.smartChargingState;\r\n data[\"smartChargingStateChanged\"] = this.smartChargingStateChanged ? this.smartChargingStateChanged.toISOString() : undefined;\r\n data[\"smartChargingConsiderationIsPluggedIn\"] = this.smartChargingConsiderationIsPluggedIn;\r\n data[\"smartChargingConsiderationIsCharging\"] = this.smartChargingConsiderationIsCharging;\r\n data[\"smartChargingConsiderationAtChargingLocation\"] = this.smartChargingConsiderationAtChargingLocation;\r\n data[\"smartChargingConsiderationHasTimeEstimate\"] = this.smartChargingConsiderationHasTimeEstimate;\r\n data[\"smartChargingPlanCurrency\"] = this.smartChargingPlanCurrency;\r\n data[\"smartChargingPlanNonSmartCost\"] = this.smartChargingPlanNonSmartCost;\r\n data[\"smartChargingPlanSmartCost\"] = this.smartChargingPlanSmartCost;\r\n data[\"smartChargingPlanStopAt\"] = this.smartChargingPlanStopAt ? this.smartChargingPlanStopAt.toISOString() : undefined;\r\n data[\"smartChargingPlanStartAt\"] = this.smartChargingPlanStartAt ? this.smartChargingPlanStartAt.toISOString() : undefined;\r\n data[\"smartChargingPlanEstimatedFinishAt\"] = this.smartChargingPlanEstimatedFinishAt ? this.smartChargingPlanEstimatedFinishAt.toISOString() : undefined;\r\n data[\"smartChargingPlanStopConfirmedAt\"] = this.smartChargingPlanStopConfirmedAt ? this.smartChargingPlanStopConfirmedAt.toISOString() : undefined;\r\n data[\"smartChargingPlanStartConfirmedAt\"] = this.smartChargingPlanStartConfirmedAt ? this.smartChargingPlanStartConfirmedAt.toISOString() : undefined;\r\n data[\"smartChargingPlanEndedAt\"] = this.smartChargingPlanEndedAt ? this.smartChargingPlanEndedAt.toISOString() : undefined;\r\n data[\"smartChargingPlanFinalState\"] = this.smartChargingPlanFinalState;\r\n data[\"smartChargingPlanFailureCondition\"] = this.smartChargingPlanFailureCondition;\r\n data[\"smartChargingPlanExternalStartCreatedAt\"] = this.smartChargingPlanExternalStartCreatedAt ? this.smartChargingPlanExternalStartCreatedAt.toISOString() : undefined;\r\n data[\"smartChargingPlanExternalStartEndedAt\"] = this.smartChargingPlanExternalStartEndedAt ? this.smartChargingPlanExternalStartEndedAt.toISOString() : undefined;\r\n data[\"smartChargingPlanExternalStartTargetType\"] = this.smartChargingPlanExternalStartTargetType;\r\n data[\"smartChargingPlanExternalStartTargetId\"] = this.smartChargingPlanExternalStartTargetId;\r\n data[\"smartChargingPlanExternalStartVendorActionId\"] = this.smartChargingPlanExternalStartVendorActionId;\r\n data[\"smartChargingPlanChargingLocationId\"] = this.smartChargingPlanChargingLocationId;\r\n data[\"smartChargingSmartOverrideCreatedAt\"] = this.smartChargingSmartOverrideCreatedAt ? this.smartChargingSmartOverrideCreatedAt.toISOString() : undefined;\r\n data[\"smartChargingSmartOverrideEndedAt\"] = this.smartChargingSmartOverrideEndedAt ? this.smartChargingSmartOverrideEndedAt.toISOString() : undefined;\r\n data[\"smartChargingSmartOverrideTargetType\"] = this.smartChargingSmartOverrideTargetType;\r\n data[\"smartChargingSmartOverrideTargetId\"] = this.smartChargingSmartOverrideTargetId;\r\n data[\"smartChargingSmartOverrideVendorActionId\"] = this.smartChargingSmartOverrideVendorActionId;\r\n data[\"minimumChargeLimit\"] = this.minimumChargeLimit;\r\n data[\"longitude\"] = this.longitude;\r\n data[\"latitude\"] = this.latitude;\r\n data[\"locationLastUpdated\"] = this.locationLastUpdated ? this.locationLastUpdated.toISOString() : undefined;\r\n data[\"odometerDistance\"] = this.odometerDistance;\r\n data[\"odometerLastUpdated\"] = this.odometerLastUpdated ? this.odometerLastUpdated.toISOString() : undefined;\r\n data[\"informationCapable\"] = this.informationCapable;\r\n if (Array.isArray(this.informationInterventionIds)) {\r\n data[\"informationInterventionIds\"] = [];\r\n for (let item of this.informationInterventionIds)\r\n data[\"informationInterventionIds\"].push(item);\r\n }\r\n data[\"chargeStateCapable\"] = this.chargeStateCapable;\r\n if (Array.isArray(this.chargeStateInterventionIds)) {\r\n data[\"chargeStateInterventionIds\"] = [];\r\n for (let item of this.chargeStateInterventionIds)\r\n data[\"chargeStateInterventionIds\"].push(item);\r\n }\r\n data[\"locationCapable\"] = this.locationCapable;\r\n if (Array.isArray(this.locationInterventionIds)) {\r\n data[\"locationInterventionIds\"] = [];\r\n for (let item of this.locationInterventionIds)\r\n data[\"locationInterventionIds\"].push(item);\r\n }\r\n data[\"odometerCapable\"] = this.odometerCapable;\r\n if (Array.isArray(this.odometerInterventionIds)) {\r\n data[\"odometerInterventionIds\"] = [];\r\n for (let item of this.odometerInterventionIds)\r\n data[\"odometerInterventionIds\"].push(item);\r\n }\r\n data[\"setMaxCurrentCapable\"] = this.setMaxCurrentCapable;\r\n if (Array.isArray(this.setMaxCurrentInterventionIds)) {\r\n data[\"setMaxCurrentInterventionIds\"] = [];\r\n for (let item of this.setMaxCurrentInterventionIds)\r\n data[\"setMaxCurrentInterventionIds\"].push(item);\r\n }\r\n data[\"startChargingCapable\"] = this.startChargingCapable;\r\n if (Array.isArray(this.startChargingInterventionIds)) {\r\n data[\"startChargingInterventionIds\"] = [];\r\n for (let item of this.startChargingInterventionIds)\r\n data[\"startChargingInterventionIds\"].push(item);\r\n }\r\n data[\"stopChargingCapable\"] = this.stopChargingCapable;\r\n if (Array.isArray(this.stopChargingInterventionIds)) {\r\n data[\"stopChargingInterventionIds\"] = [];\r\n for (let item of this.stopChargingInterventionIds)\r\n data[\"stopChargingInterventionIds\"].push(item);\r\n }\r\n data[\"smartChargingCapable\"] = this.smartChargingCapable;\r\n if (Array.isArray(this.smartChargingInterventionIds)) {\r\n data[\"smartChargingInterventionIds\"] = [];\r\n for (let item of this.smartChargingInterventionIds)\r\n data[\"smartChargingInterventionIds\"].push(item);\r\n }\r\n data[\"scopes\"] = this.scopes;\r\n data[\"locationId\"] = this.locationId;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"updatedOn\"] = this.updatedOn ? this.updatedOn.toISOString() : undefined;\r\n data[\"deleted\"] = this.deleted;\r\n data[\"reliability\"] = this.reliability;\r\n data[\"credentialsInvalidated\"] = this.credentialsInvalidated;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IVehicleModel {\r\n id?: string | undefined;\r\n userId?: string | undefined;\r\n vendor?: string | undefined;\r\n lastSeen?: moment.Moment;\r\n isReachable?: boolean;\r\n vin?: string | undefined;\r\n brand?: string | undefined;\r\n model?: string | undefined;\r\n year?: number;\r\n batteryLevel?: number;\r\n range?: number;\r\n isPluggedIn?: boolean;\r\n isCharging?: boolean;\r\n isFullyCharged?: boolean;\r\n batteryCapacity?: number;\r\n chargeLimit?: number;\r\n chargeRate?: number;\r\n chargeRemainingTime?: number;\r\n chargeStateLastUpdated?: moment.Moment;\r\n maxCurrent?: number;\r\n powerDeliveryState?: string | undefined;\r\n smartChargingEnabled?: boolean;\r\n smartChargingDeadline?: string | undefined;\r\n smartChargingUpdatedAt?: moment.Moment | undefined;\r\n smartChargingVendor?: string | undefined;\r\n smartChargingState?: string | undefined;\r\n smartChargingStateChanged?: moment.Moment | undefined;\r\n smartChargingConsiderationIsPluggedIn?: boolean | undefined;\r\n smartChargingConsiderationIsCharging?: boolean | undefined;\r\n smartChargingConsiderationAtChargingLocation?: boolean | undefined;\r\n smartChargingConsiderationHasTimeEstimate?: boolean | undefined;\r\n smartChargingPlanCurrency?: string | undefined;\r\n smartChargingPlanNonSmartCost?: number | undefined;\r\n smartChargingPlanSmartCost?: number | undefined;\r\n smartChargingPlanStopAt?: moment.Moment | undefined;\r\n smartChargingPlanStartAt?: moment.Moment | undefined;\r\n smartChargingPlanEstimatedFinishAt?: moment.Moment | undefined;\r\n smartChargingPlanStopConfirmedAt?: moment.Moment | undefined;\r\n smartChargingPlanStartConfirmedAt?: moment.Moment | undefined;\r\n smartChargingPlanEndedAt?: moment.Moment | undefined;\r\n smartChargingPlanFinalState?: string | undefined;\r\n smartChargingPlanFailureCondition?: string | undefined;\r\n smartChargingPlanExternalStartCreatedAt?: moment.Moment | undefined;\r\n smartChargingPlanExternalStartEndedAt?: moment.Moment | undefined;\r\n smartChargingPlanExternalStartTargetType?: string | undefined;\r\n smartChargingPlanExternalStartTargetId?: string | undefined;\r\n smartChargingPlanExternalStartVendorActionId?: string | undefined;\r\n smartChargingPlanChargingLocationId?: string | undefined;\r\n smartChargingSmartOverrideCreatedAt?: moment.Moment | undefined;\r\n smartChargingSmartOverrideEndedAt?: moment.Moment | undefined;\r\n smartChargingSmartOverrideTargetType?: string | undefined;\r\n smartChargingSmartOverrideTargetId?: string | undefined;\r\n smartChargingSmartOverrideVendorActionId?: string | undefined;\r\n minimumChargeLimit?: number;\r\n longitude?: number;\r\n latitude?: number;\r\n locationLastUpdated?: moment.Moment;\r\n odometerDistance?: number;\r\n odometerLastUpdated?: moment.Moment;\r\n informationCapable?: boolean;\r\n informationInterventionIds?: string[] | undefined;\r\n chargeStateCapable?: boolean;\r\n chargeStateInterventionIds?: string[] | undefined;\r\n locationCapable?: boolean;\r\n locationInterventionIds?: string[] | undefined;\r\n odometerCapable?: boolean;\r\n odometerInterventionIds?: string[] | undefined;\r\n setMaxCurrentCapable?: boolean;\r\n setMaxCurrentInterventionIds?: string[] | undefined;\r\n startChargingCapable?: boolean;\r\n startChargingInterventionIds?: string[] | undefined;\r\n stopChargingCapable?: boolean;\r\n stopChargingInterventionIds?: string[] | undefined;\r\n smartChargingCapable?: boolean;\r\n smartChargingInterventionIds?: string[] | undefined;\r\n scopes?: string | undefined;\r\n locationId?: string | undefined;\r\n createdOn?: moment.Moment;\r\n updatedOn?: moment.Moment;\r\n deleted?: boolean;\r\n reliability?: string | undefined;\r\n credentialsInvalidated?: boolean;\r\n}\r\n\r\nexport class SmartChargingResponse implements ISmartChargingResponse {\r\n enabled?: boolean;\r\n deadline?: string | undefined;\r\n minimumChargeLimit?: number;\r\n\r\n constructor(data?: ISmartChargingResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.enabled = _data[\"enabled\"];\r\n this.deadline = _data[\"deadline\"];\r\n this.minimumChargeLimit = _data[\"minimumChargeLimit\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SmartChargingResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SmartChargingResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"enabled\"] = this.enabled;\r\n data[\"deadline\"] = this.deadline;\r\n data[\"minimumChargeLimit\"] = this.minimumChargeLimit;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISmartChargingResponse {\r\n enabled?: boolean;\r\n deadline?: string | undefined;\r\n minimumChargeLimit?: number;\r\n}\r\n\r\nexport class SmartChargingOverrideResponse implements ISmartChargingOverrideResponse {\r\n createdAt?: moment.Moment;\r\n endedAt?: moment.Moment;\r\n targetType?: string | undefined;\r\n targetId?: string | undefined;\r\n vendorActionId?: string;\r\n userId?: string | undefined;\r\n vendor?: string | undefined;\r\n\r\n constructor(data?: ISmartChargingOverrideResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.createdAt = _data[\"createdAt\"] ? moment(_data[\"createdAt\"].toString()) : undefined;\r\n this.endedAt = _data[\"endedAt\"] ? moment(_data[\"endedAt\"].toString()) : undefined;\r\n this.targetType = _data[\"targetType\"];\r\n this.targetId = _data[\"targetId\"];\r\n this.vendorActionId = _data[\"vendorActionId\"];\r\n this.userId = _data[\"userId\"];\r\n this.vendor = _data[\"vendor\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SmartChargingOverrideResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SmartChargingOverrideResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"createdAt\"] = this.createdAt ? this.createdAt.toISOString() : undefined;\r\n data[\"endedAt\"] = this.endedAt ? this.endedAt.toISOString() : undefined;\r\n data[\"targetType\"] = this.targetType;\r\n data[\"targetId\"] = this.targetId;\r\n data[\"vendorActionId\"] = this.vendorActionId;\r\n data[\"userId\"] = this.userId;\r\n data[\"vendor\"] = this.vendor;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISmartChargingOverrideResponse {\r\n createdAt?: moment.Moment;\r\n endedAt?: moment.Moment;\r\n targetType?: string | undefined;\r\n targetId?: string | undefined;\r\n vendorActionId?: string;\r\n userId?: string | undefined;\r\n vendor?: string | undefined;\r\n}\r\n\r\nexport class EnodeLinkResult implements IEnodeLinkResult {\r\n url?: string | undefined;\r\n accessToken?: string | undefined;\r\n userId?: string | undefined;\r\n\r\n constructor(data?: IEnodeLinkResult) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.url = _data[\"url\"];\r\n this.accessToken = _data[\"accessToken\"];\r\n this.userId = _data[\"userId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EnodeLinkResult {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EnodeLinkResult();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"url\"] = this.url;\r\n data[\"accessToken\"] = this.accessToken;\r\n data[\"userId\"] = this.userId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEnodeLinkResult {\r\n url?: string | undefined;\r\n accessToken?: string | undefined;\r\n userId?: string | undefined;\r\n}\r\n\r\nexport enum BatteryVendor {\r\n TESLA = \"TESLA\",\r\n ENPHASE = \"ENPHASE\",\r\n}\r\n\r\nexport enum ChargerVendor {\r\n ZAPTEC = \"ZAPTEC\",\r\n EASEE = \"EASEE\",\r\n WALLBOX = \"WALLBOX\",\r\n EO = \"EO\",\r\n CHARGEAMPS = \"CHARGEAMPS\",\r\n EVBOX = \"EVBOX\",\r\n GOE = \"GOE\",\r\n FRONIUS = \"FRONIUS\",\r\n CHARGEPOINT = \"CHARGEPOINT\",\r\n ENELX = \"ENELX\",\r\n TESLA = \"TESLA\",\r\n}\r\n\r\nexport enum HvacVendor {\r\n TADO = \"TADO\",\r\n MILL = \"MILL\",\r\n ADAX = \"ADAX\",\r\n ECOBEE = \"ECOBEE\",\r\n SENSIBO = \"SENSIBO\",\r\n HONEYWELL = \"HONEYWELL\",\r\n RESIDEO = \"RESIDEO\",\r\n MITSUBISHI = \"MITSUBISHI\",\r\n MICROMATIC = \"MICROMATIC\",\r\n NIBE = \"NIBE\",\r\n PANASONIC = \"PANASONIC\",\r\n TOSHIBA = \"TOSHIBA\",\r\n DAIKIN = \"DAIKIN\",\r\n NEST = \"NEST\",\r\n FUJITSU = \"FUJITSU\",\r\n BOSCH = \"BOSCH\",\r\n NETATMO = \"NETATMO\",\r\n}\r\n\r\nexport enum InverterVendor {\r\n APSYSTEMS = \"APSYSTEMS\",\r\n CSISolar = \"CSISolar\",\r\n Deye = \"Deye\",\r\n ENPHASE = \"ENPHASE\",\r\n FOXESS = \"FOXESS\",\r\n FRONIUS = \"FRONIUS\",\r\n GOODWE = \"GOODWE\",\r\n GROWATT = \"GROWATT\",\r\n Hoymiles = \"Hoymiles\",\r\n HUAWEI = \"HUAWEI\",\r\n INVT = \"INVT\",\r\n SMA = \"SMA\",\r\n SOFAR = \"SOFAR\",\r\n SOLAREDGE = \"SOLAREDGE\",\r\n SOLARK = \"SOLARK\",\r\n SOLAX = \"SOLAX\",\r\n SOLIS = \"SOLIS\",\r\n SOLPLANET = \"SOLPLANET\",\r\n SUNGROW = \"SUNGROW\",\r\n SUNSYNK = \"SUNSYNK\",\r\n TESLA = \"TESLA\",\r\n TSUN = \"TSUN\",\r\n}\r\n\r\nexport enum MeterVendor {\r\n ENPHASE = \"ENPHASE\",\r\n TESLA = \"TESLA\",\r\n}\r\n\r\nexport enum VehicleVendor {\r\n AUDI = \"AUDI\",\r\n BMW = \"BMW\",\r\n HONDA = \"HONDA\",\r\n HYUNDAI = \"HYUNDAI\",\r\n JAGUAR = \"JAGUAR\",\r\n LANDROVER = \"LANDROVER\",\r\n KIA = \"KIA\",\r\n MERCEDES = \"MERCEDES\",\r\n MINI = \"MINI\",\r\n NISSAN = \"NISSAN\",\r\n PEUGEOT = \"PEUGEOT\",\r\n PORSCHE = \"PORSCHE\",\r\n RENAULT = \"RENAULT\",\r\n SEAT = \"SEAT\",\r\n SKODA = \"SKODA\",\r\n TESLA = \"TESLA\",\r\n VOLKSWAGEN = \"VOLKSWAGEN\",\r\n VOLVO = \"VOLVO\",\r\n FORD = \"FORD\",\r\n OPEL = \"OPEL\",\r\n DS = \"DS\",\r\n TOYOTA = \"TOYOTA\",\r\n LEXUS = \"LEXUS\",\r\n CITROEN = \"CITROEN\",\r\n CUPRA = \"CUPRA\",\r\n VAUXHALL = \"VAUXHALL\",\r\n FIAT = \"FIAT\",\r\n RIVIAN = \"RIVIAN\",\r\n NIO = \"NIO\",\r\n CHEVROLET = \"CHEVROLET\",\r\n GMC = \"GMC\",\r\n CADILLAC = \"CADILLAC\",\r\n XPENG = \"XPENG\",\r\n}\r\n\r\nexport class UserResponse_linkedVendors_vendor implements IUserResponse_linkedVendors_vendor {\r\n batteryVendor?: BatteryVendor;\r\n chargerVendor?: ChargerVendor;\r\n hvacVendor?: HvacVendor;\r\n inverterVendor?: InverterVendor;\r\n meterVendor?: MeterVendor;\r\n vehicleVendor?: VehicleVendor;\r\n\r\n constructor(data?: IUserResponse_linkedVendors_vendor) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.batteryVendor = _data[\"batteryVendor\"];\r\n this.chargerVendor = _data[\"chargerVendor\"];\r\n this.hvacVendor = _data[\"hvacVendor\"];\r\n this.inverterVendor = _data[\"inverterVendor\"];\r\n this.meterVendor = _data[\"meterVendor\"];\r\n this.vehicleVendor = _data[\"vehicleVendor\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserResponse_linkedVendors_vendor {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserResponse_linkedVendors_vendor();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"batteryVendor\"] = this.batteryVendor;\r\n data[\"chargerVendor\"] = this.chargerVendor;\r\n data[\"hvacVendor\"] = this.hvacVendor;\r\n data[\"inverterVendor\"] = this.inverterVendor;\r\n data[\"meterVendor\"] = this.meterVendor;\r\n data[\"vehicleVendor\"] = this.vehicleVendor;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserResponse_linkedVendors_vendor {\r\n batteryVendor?: BatteryVendor;\r\n chargerVendor?: ChargerVendor;\r\n hvacVendor?: HvacVendor;\r\n inverterVendor?: InverterVendor;\r\n meterVendor?: MeterVendor;\r\n vehicleVendor?: VehicleVendor;\r\n}\r\n\r\nexport enum VendorType {\r\n Vehicle = \"vehicle\",\r\n Charger = \"charger\",\r\n Hvac = \"hvac\",\r\n Inverter = \"inverter\",\r\n Battery = \"battery\",\r\n Meter = \"meter\",\r\n}\r\n\r\nexport class UserResponse_linkedVendors implements IUserResponse_linkedVendors {\r\n isValid?: boolean | undefined;\r\n vendor?: UserResponse_linkedVendors_vendor;\r\n vendorType?: VendorType;\r\n\r\n constructor(data?: IUserResponse_linkedVendors) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.isValid = _data[\"isValid\"];\r\n this.vendor = _data[\"vendor\"] ? UserResponse_linkedVendors_vendor.fromJS(_data[\"vendor\"]) : undefined;\r\n this.vendorType = _data[\"vendorType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserResponse_linkedVendors {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserResponse_linkedVendors();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"isValid\"] = this.isValid;\r\n data[\"vendor\"] = this.vendor ? this.vendor.toJSON() : undefined;\r\n data[\"vendorType\"] = this.vendorType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserResponse_linkedVendors {\r\n isValid?: boolean | undefined;\r\n vendor?: UserResponse_linkedVendors_vendor;\r\n vendorType?: VendorType;\r\n}\r\n\r\nexport class UserResponse implements IUserResponse {\r\n id?: string | undefined;\r\n linkedVendors?: UserResponse_linkedVendors[] | undefined;\r\n\r\n constructor(data?: IUserResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n if (Array.isArray(_data[\"linkedVendors\"])) {\r\n this.linkedVendors = [] as any;\r\n for (let item of _data[\"linkedVendors\"])\r\n this.linkedVendors!.push(UserResponse_linkedVendors.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): UserResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new UserResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n if (Array.isArray(this.linkedVendors)) {\r\n data[\"linkedVendors\"] = [];\r\n for (let item of this.linkedVendors)\r\n data[\"linkedVendors\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IUserResponse {\r\n id?: string | undefined;\r\n linkedVendors?: UserResponse_linkedVendors[] | undefined;\r\n}\r\n\r\nexport class Location implements ILocation {\r\n id?: string;\r\n userId?: string | undefined;\r\n name?: string | undefined;\r\n latitude?: number;\r\n longitude?: number;\r\n timeZoneName?: string | undefined;\r\n\r\n constructor(data?: ILocation) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.userId = _data[\"userId\"];\r\n this.name = _data[\"name\"];\r\n this.latitude = _data[\"latitude\"];\r\n this.longitude = _data[\"longitude\"];\r\n this.timeZoneName = _data[\"timeZoneName\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Location {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Location();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"userId\"] = this.userId;\r\n data[\"name\"] = this.name;\r\n data[\"latitude\"] = this.latitude;\r\n data[\"longitude\"] = this.longitude;\r\n data[\"timeZoneName\"] = this.timeZoneName;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ILocation {\r\n id?: string;\r\n userId?: string | undefined;\r\n name?: string | undefined;\r\n latitude?: number;\r\n longitude?: number;\r\n timeZoneName?: string | undefined;\r\n}\r\n\r\nexport enum BatteryBrand {\r\n Tesla = \"Tesla\",\r\n Enphase = \"Enphase\",\r\n}\r\n\r\nexport enum ChargerBrand {\r\n Zaptec = \"Zaptec\",\r\n Easee = \"Easee\",\r\n Wallbox = \"Wallbox\",\r\n EO = \"EO\",\r\n EVBox = \"EVBox\",\r\n Charge_Amps = \"Charge Amps\",\r\n GoE = \"go-e\",\r\n Fronius = \"Fronius\",\r\n ChargePoint = \"ChargePoint\",\r\n Enel_X = \"Enel X\",\r\n Tesla = \"Tesla\",\r\n}\r\n\r\nexport enum HvacBrand {\r\n Tado = \"Tado\",\r\n Mill = \"Mill\",\r\n ADAX = \"ADAX\",\r\n Ecobee = \"Ecobee\",\r\n Sensibo = \"Sensibo\",\r\n Honeywell_TCC = \"Honeywell TCC\",\r\n Resideo = \"Resideo\",\r\n Mitsubishi = \"Mitsubishi\",\r\n Micro_Matic = \"Micro Matic\",\r\n NIBE = \"NIBE\",\r\n Panasonic = \"Panasonic\",\r\n Toshiba = \"Toshiba\",\r\n DAIKIN = \"DAIKIN\",\r\n Nest = \"Nest\",\r\n Fujitsu = \"Fujitsu\",\r\n Bosch = \"Bosch\",\r\n Netatmo = \"Netatmo\",\r\n}\r\n\r\nexport enum InverterBrand {\r\n APsystems = \"APsystems\",\r\n CSISolar = \"CSISolar\",\r\n Deye = \"Deye\",\r\n Enphase = \"Enphase\",\r\n FOXESS = \"FOXESS\",\r\n Fronius = \"Fronius\",\r\n GoodWe = \"GoodWe\",\r\n Growatt = \"Growatt\",\r\n Hoymiles = \"Hoymiles\",\r\n Huawei = \"Huawei\",\r\n INVT = \"INVT\",\r\n SMA = \"SMA\",\r\n Sofar = \"Sofar\",\r\n SolarEdge = \"SolarEdge\",\r\n SolArk = \"SolArk\",\r\n Solax = \"Solax\",\r\n Solis = \"Solis\",\r\n Solplanet = \"Solplanet\",\r\n Sungrow = \"Sungrow\",\r\n SUNSYNK = \"SUNSYNK\",\r\n Tesla = \"Tesla\",\r\n TSUN = \"TSUN\",\r\n}\r\n\r\nexport enum MeterBrand {\r\n Enphase = \"Enphase\",\r\n Tesla = \"Tesla\",\r\n}\r\n\r\nexport enum VehicleBrand {\r\n Audi = \"Audi\",\r\n BMW = \"BMW\",\r\n Honda = \"Honda\",\r\n Hyundai = \"Hyundai\",\r\n Jaguar = \"Jaguar\",\r\n Land_Rover = \"Land Rover\",\r\n Kia = \"Kia\",\r\n Mercedes = \"Mercedes\",\r\n MINI = \"MINI\",\r\n Nissan = \"Nissan\",\r\n Peugeot = \"Peugeot\",\r\n Porsche = \"Porsche\",\r\n Renault = \"Renault\",\r\n SEAT = \"SEAT\",\r\n ŠKODA = \"ŠKODA\",\r\n Tesla = \"Tesla\",\r\n Volkswagen = \"Volkswagen\",\r\n Volvo = \"Volvo\",\r\n Ford = \"Ford\",\r\n Opel = \"Opel\",\r\n DS = \"DS\",\r\n Toyota = \"Toyota\",\r\n Lexus = \"Lexus\",\r\n Citroën = \"Citroën\",\r\n Cupra = \"Cupra\",\r\n Vauxhall = \"Vauxhall\",\r\n Fiat = \"Fiat\",\r\n Rivian = \"Rivian\",\r\n Nio = \"Nio\",\r\n Chevrolet = \"Chevrolet\",\r\n GMC = \"GMC\",\r\n Cadillac = \"Cadillac\",\r\n XPENG = \"XPENG\",\r\n}\r\n\r\nexport class Intervention_brand implements IIntervention_brand {\r\n batteryBrand?: BatteryBrand;\r\n chargerBrand?: ChargerBrand;\r\n hvacBrand?: HvacBrand;\r\n inverterBrand?: InverterBrand;\r\n meterBrand?: MeterBrand;\r\n vehicleBrand?: VehicleBrand;\r\n\r\n constructor(data?: IIntervention_brand) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.batteryBrand = _data[\"batteryBrand\"];\r\n this.chargerBrand = _data[\"chargerBrand\"];\r\n this.hvacBrand = _data[\"hvacBrand\"];\r\n this.inverterBrand = _data[\"inverterBrand\"];\r\n this.meterBrand = _data[\"meterBrand\"];\r\n this.vehicleBrand = _data[\"vehicleBrand\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Intervention_brand {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Intervention_brand();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"batteryBrand\"] = this.batteryBrand;\r\n data[\"chargerBrand\"] = this.chargerBrand;\r\n data[\"hvacBrand\"] = this.hvacBrand;\r\n data[\"inverterBrand\"] = this.inverterBrand;\r\n data[\"meterBrand\"] = this.meterBrand;\r\n data[\"vehicleBrand\"] = this.vehicleBrand;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIntervention_brand {\r\n batteryBrand?: BatteryBrand;\r\n chargerBrand?: ChargerBrand;\r\n hvacBrand?: HvacBrand;\r\n inverterBrand?: InverterBrand;\r\n meterBrand?: MeterBrand;\r\n vehicleBrand?: VehicleBrand;\r\n}\r\n\r\nexport enum Intervention_domain {\r\n Account = \"Account\",\r\n Device = \"Device\",\r\n}\r\n\r\nexport enum Intervention_resolution_access {\r\n Remote = \"Remote\",\r\n Physical = \"Physical\",\r\n}\r\n\r\nexport enum Intervention_resolution_agent {\r\n User = \"User\",\r\n ThirdParty = \"ThirdParty\",\r\n}\r\n\r\nexport class Intervention_resolution implements IIntervention_resolution {\r\n access?: Intervention_resolution_access;\r\n agent?: Intervention_resolution_agent;\r\n description?: string | undefined;\r\n title?: string | undefined;\r\n\r\n constructor(data?: IIntervention_resolution) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.access = _data[\"access\"];\r\n this.agent = _data[\"agent\"];\r\n this.description = _data[\"description\"];\r\n this.title = _data[\"title\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Intervention_resolution {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Intervention_resolution();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"access\"] = this.access;\r\n data[\"agent\"] = this.agent;\r\n data[\"description\"] = this.description;\r\n data[\"title\"] = this.title;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIntervention_resolution {\r\n access?: Intervention_resolution_access;\r\n agent?: Intervention_resolution_agent;\r\n description?: string | undefined;\r\n title?: string | undefined;\r\n}\r\n\r\nexport class Intervention_vendor implements IIntervention_vendor {\r\n batteryVendor?: BatteryVendor;\r\n chargerVendor?: ChargerVendor;\r\n hvacVendor?: HvacVendor;\r\n inverterVendor?: InverterVendor;\r\n meterVendor?: MeterVendor;\r\n vehicleVendor?: VehicleVendor;\r\n\r\n constructor(data?: IIntervention_vendor) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.batteryVendor = _data[\"batteryVendor\"];\r\n this.chargerVendor = _data[\"chargerVendor\"];\r\n this.hvacVendor = _data[\"hvacVendor\"];\r\n this.inverterVendor = _data[\"inverterVendor\"];\r\n this.meterVendor = _data[\"meterVendor\"];\r\n this.vehicleVendor = _data[\"vehicleVendor\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Intervention_vendor {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Intervention_vendor();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"batteryVendor\"] = this.batteryVendor;\r\n data[\"chargerVendor\"] = this.chargerVendor;\r\n data[\"hvacVendor\"] = this.hvacVendor;\r\n data[\"inverterVendor\"] = this.inverterVendor;\r\n data[\"meterVendor\"] = this.meterVendor;\r\n data[\"vehicleVendor\"] = this.vehicleVendor;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIntervention_vendor {\r\n batteryVendor?: BatteryVendor;\r\n chargerVendor?: ChargerVendor;\r\n hvacVendor?: HvacVendor;\r\n inverterVendor?: InverterVendor;\r\n meterVendor?: MeterVendor;\r\n vehicleVendor?: VehicleVendor;\r\n}\r\n\r\nexport class Intervention implements IIntervention {\r\n brand?: Intervention_brand;\r\n domain?: Intervention_domain;\r\n id?: string | undefined;\r\n introducedAt?: moment.Moment | undefined;\r\n resolution?: Intervention_resolution;\r\n vendor?: Intervention_vendor;\r\n vendorType?: VendorType;\r\n\r\n constructor(data?: IIntervention) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.brand = _data[\"brand\"] ? Intervention_brand.fromJS(_data[\"brand\"]) : undefined;\r\n this.domain = _data[\"domain\"];\r\n this.id = _data[\"id\"];\r\n this.introducedAt = _data[\"introducedAt\"] ? moment(_data[\"introducedAt\"].toString()) : undefined;\r\n this.resolution = _data[\"resolution\"] ? Intervention_resolution.fromJS(_data[\"resolution\"]) : undefined;\r\n this.vendor = _data[\"vendor\"] ? Intervention_vendor.fromJS(_data[\"vendor\"]) : undefined;\r\n this.vendorType = _data[\"vendorType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Intervention {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Intervention();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"brand\"] = this.brand ? this.brand.toJSON() : undefined;\r\n data[\"domain\"] = this.domain;\r\n data[\"id\"] = this.id;\r\n data[\"introducedAt\"] = this.introducedAt ? this.introducedAt.toISOString() : undefined;\r\n data[\"resolution\"] = this.resolution ? this.resolution.toJSON() : undefined;\r\n data[\"vendor\"] = this.vendor ? this.vendor.toJSON() : undefined;\r\n data[\"vendorType\"] = this.vendorType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IIntervention {\r\n brand?: Intervention_brand;\r\n domain?: Intervention_domain;\r\n id?: string | undefined;\r\n introducedAt?: moment.Moment | undefined;\r\n resolution?: Intervention_resolution;\r\n vendor?: Intervention_vendor;\r\n vendorType?: VendorType;\r\n}\r\n\r\nexport class Aggregates implements IAggregates {\r\n max?: number | undefined;\r\n mean?: number | undefined;\r\n min?: number | undefined;\r\n\r\n constructor(data?: IAggregates) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.max = _data[\"max\"];\r\n this.mean = _data[\"mean\"];\r\n this.min = _data[\"min\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Aggregates {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Aggregates();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"max\"] = this.max;\r\n data[\"mean\"] = this.mean;\r\n data[\"min\"] = this.min;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAggregates {\r\n max?: number | undefined;\r\n mean?: number | undefined;\r\n min?: number | undefined;\r\n}\r\n\r\nexport class NullableAggregates implements INullableAggregates {\r\n max?: number | undefined;\r\n mean?: number | undefined;\r\n min?: number | undefined;\r\n\r\n constructor(data?: INullableAggregates) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.max = _data[\"max\"];\r\n this.mean = _data[\"mean\"];\r\n this.min = _data[\"min\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): NullableAggregates {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NullableAggregates();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"max\"] = this.max;\r\n data[\"mean\"] = this.mean;\r\n data[\"min\"] = this.min;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INullableAggregates {\r\n max?: number | undefined;\r\n mean?: number | undefined;\r\n min?: number | undefined;\r\n}\r\n\r\nexport class SessionsStatisticsTimeseries implements ISessionsStatisticsTimeseries {\r\n costSum?: number | undefined;\r\n estimatedSavings?: number | undefined;\r\n from?: moment.Moment | undefined;\r\n id?: string | undefined;\r\n kw?: Aggregates;\r\n kwhSum?: number | undefined;\r\n locationId?: string | undefined;\r\n nonSmartPrice?: NullableAggregates;\r\n price?: Aggregates;\r\n to?: moment.Moment | undefined;\r\n\r\n constructor(data?: ISessionsStatisticsTimeseries) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.costSum = _data[\"costSum\"];\r\n this.estimatedSavings = _data[\"estimatedSavings\"];\r\n this.from = _data[\"from\"] ? moment(_data[\"from\"].toString()) : undefined;\r\n this.id = _data[\"id\"];\r\n this.kw = _data[\"kw\"] ? Aggregates.fromJS(_data[\"kw\"]) : undefined;\r\n this.kwhSum = _data[\"kwhSum\"];\r\n this.locationId = _data[\"locationId\"];\r\n this.nonSmartPrice = _data[\"nonSmartPrice\"] ? NullableAggregates.fromJS(_data[\"nonSmartPrice\"]) : undefined;\r\n this.price = _data[\"price\"] ? Aggregates.fromJS(_data[\"price\"]) : undefined;\r\n this.to = _data[\"to\"] ? moment(_data[\"to\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): SessionsStatisticsTimeseries {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SessionsStatisticsTimeseries();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"costSum\"] = this.costSum;\r\n data[\"estimatedSavings\"] = this.estimatedSavings;\r\n data[\"from\"] = this.from ? this.from.toISOString() : undefined;\r\n data[\"id\"] = this.id;\r\n data[\"kw\"] = this.kw ? this.kw.toJSON() : undefined;\r\n data[\"kwhSum\"] = this.kwhSum;\r\n data[\"locationId\"] = this.locationId;\r\n data[\"nonSmartPrice\"] = this.nonSmartPrice ? this.nonSmartPrice.toJSON() : undefined;\r\n data[\"price\"] = this.price ? this.price.toJSON() : undefined;\r\n data[\"to\"] = this.to ? this.to.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISessionsStatisticsTimeseries {\r\n costSum?: number | undefined;\r\n estimatedSavings?: number | undefined;\r\n from?: moment.Moment | undefined;\r\n id?: string | undefined;\r\n kw?: Aggregates;\r\n kwhSum?: number | undefined;\r\n locationId?: string | undefined;\r\n nonSmartPrice?: NullableAggregates;\r\n price?: Aggregates;\r\n to?: moment.Moment | undefined;\r\n}\r\n\r\nexport class SupportedModelCapabilities implements ISupportedModelCapabilities {\r\n information?: boolean;\r\n location?: boolean;\r\n odometer?: boolean;\r\n chargeState?: boolean;\r\n startCharging?: boolean;\r\n stopCharging?: boolean;\r\n smartCharging?: boolean;\r\n\r\n constructor(data?: ISupportedModelCapabilities) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.information = _data[\"information\"];\r\n this.location = _data[\"location\"];\r\n this.odometer = _data[\"odometer\"];\r\n this.chargeState = _data[\"chargeState\"];\r\n this.startCharging = _data[\"startCharging\"];\r\n this.stopCharging = _data[\"stopCharging\"];\r\n this.smartCharging = _data[\"smartCharging\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SupportedModelCapabilities {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SupportedModelCapabilities();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"information\"] = this.information;\r\n data[\"location\"] = this.location;\r\n data[\"odometer\"] = this.odometer;\r\n data[\"chargeState\"] = this.chargeState;\r\n data[\"startCharging\"] = this.startCharging;\r\n data[\"stopCharging\"] = this.stopCharging;\r\n data[\"smartCharging\"] = this.smartCharging;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISupportedModelCapabilities {\r\n information?: boolean;\r\n location?: boolean;\r\n odometer?: boolean;\r\n chargeState?: boolean;\r\n startCharging?: boolean;\r\n stopCharging?: boolean;\r\n smartCharging?: boolean;\r\n}\r\n\r\nexport class SupportedModel implements ISupportedModel {\r\n id?: string;\r\n createdAt?: moment.Moment;\r\n updatedAt?: moment.Moment;\r\n model?: string | undefined;\r\n activationRequired?: boolean;\r\n integrationStatus?: string | undefined;\r\n regions?: string[] | undefined;\r\n reliability?: string | undefined;\r\n vendor?: string | undefined;\r\n brand?: string | undefined;\r\n year?: number[] | undefined;\r\n driveTrain?: string | undefined;\r\n capabilities?: SupportedModelCapabilities;\r\n enabled?: boolean;\r\n\r\n constructor(data?: ISupportedModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.createdAt = _data[\"createdAt\"] ? moment(_data[\"createdAt\"].toString()) : undefined;\r\n this.updatedAt = _data[\"updatedAt\"] ? moment(_data[\"updatedAt\"].toString()) : undefined;\r\n this.model = _data[\"model\"];\r\n this.activationRequired = _data[\"activationRequired\"];\r\n this.integrationStatus = _data[\"integrationStatus\"];\r\n if (Array.isArray(_data[\"regions\"])) {\r\n this.regions = [] as any;\r\n for (let item of _data[\"regions\"])\r\n this.regions!.push(item);\r\n }\r\n this.reliability = _data[\"reliability\"];\r\n this.vendor = _data[\"vendor\"];\r\n this.brand = _data[\"brand\"];\r\n if (Array.isArray(_data[\"year\"])) {\r\n this.year = [] as any;\r\n for (let item of _data[\"year\"])\r\n this.year!.push(item);\r\n }\r\n this.driveTrain = _data[\"driveTrain\"];\r\n this.capabilities = _data[\"capabilities\"] ? SupportedModelCapabilities.fromJS(_data[\"capabilities\"]) : undefined;\r\n this.enabled = _data[\"enabled\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SupportedModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SupportedModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"createdAt\"] = this.createdAt ? this.createdAt.toISOString() : undefined;\r\n data[\"updatedAt\"] = this.updatedAt ? this.updatedAt.toISOString() : undefined;\r\n data[\"model\"] = this.model;\r\n data[\"activationRequired\"] = this.activationRequired;\r\n data[\"integrationStatus\"] = this.integrationStatus;\r\n if (Array.isArray(this.regions)) {\r\n data[\"regions\"] = [];\r\n for (let item of this.regions)\r\n data[\"regions\"].push(item);\r\n }\r\n data[\"reliability\"] = this.reliability;\r\n data[\"vendor\"] = this.vendor;\r\n data[\"brand\"] = this.brand;\r\n if (Array.isArray(this.year)) {\r\n data[\"year\"] = [];\r\n for (let item of this.year)\r\n data[\"year\"].push(item);\r\n }\r\n data[\"driveTrain\"] = this.driveTrain;\r\n data[\"capabilities\"] = this.capabilities ? this.capabilities.toJSON() : undefined;\r\n data[\"enabled\"] = this.enabled;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISupportedModel {\r\n id?: string;\r\n createdAt?: moment.Moment;\r\n updatedAt?: moment.Moment;\r\n model?: string | undefined;\r\n activationRequired?: boolean;\r\n integrationStatus?: string | undefined;\r\n regions?: string[] | undefined;\r\n reliability?: string | undefined;\r\n vendor?: string | undefined;\r\n brand?: string | undefined;\r\n year?: number[] | undefined;\r\n driveTrain?: string | undefined;\r\n capabilities?: SupportedModelCapabilities;\r\n enabled?: boolean;\r\n}\r\n\r\nexport enum MspecsSubscriberStatus {\r\n ENUMS_PROVIDER_SERVICE_SUBSCRIPTION_STATUS_ACTIVE = \"ENUMS_PROVIDER_SERVICE_SUBSCRIPTION_STATUS_ACTIVE\",\r\n ENUMS_PROVIDER_SERVICE_SUBSCRIPTION_STATUS_PENDING = \"ENUMS_PROVIDER_SERVICE_SUBSCRIPTION_STATUS_PENDING\",\r\n ENUMS_PROVIDER_SERVICE_SUBSCRIPTION_STATUS_INACTIVE = \"ENUMS_PROVIDER_SERVICE_SUBSCRIPTION_STATUS_INACTIVE\",\r\n}\r\n\r\nexport class MspecsOrganization implements IMspecsOrganization {\r\n id?: string | undefined;\r\n name?: string | undefined;\r\n legalName?: string | undefined;\r\n identifier?: string | undefined;\r\n phoneNumber?: string | undefined;\r\n email?: string | undefined;\r\n streetAddress?: string | undefined;\r\n postalCode?: string | undefined;\r\n city?: string | undefined;\r\n\r\n constructor(data?: IMspecsOrganization) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.legalName = _data[\"legalName\"];\r\n this.identifier = _data[\"identifier\"];\r\n this.phoneNumber = _data[\"phoneNumber\"];\r\n this.email = _data[\"email\"];\r\n this.streetAddress = _data[\"streetAddress\"];\r\n this.postalCode = _data[\"postalCode\"];\r\n this.city = _data[\"city\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MspecsOrganization {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MspecsOrganization();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"legalName\"] = this.legalName;\r\n data[\"identifier\"] = this.identifier;\r\n data[\"phoneNumber\"] = this.phoneNumber;\r\n data[\"email\"] = this.email;\r\n data[\"streetAddress\"] = this.streetAddress;\r\n data[\"postalCode\"] = this.postalCode;\r\n data[\"city\"] = this.city;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMspecsOrganization {\r\n id?: string | undefined;\r\n name?: string | undefined;\r\n legalName?: string | undefined;\r\n identifier?: string | undefined;\r\n phoneNumber?: string | undefined;\r\n email?: string | undefined;\r\n streetAddress?: string | undefined;\r\n postalCode?: string | undefined;\r\n city?: string | undefined;\r\n}\r\n\r\nexport class MspecsSubscriber implements IMspecsSubscriber {\r\n subscriberId?: string | undefined;\r\n createdDate?: moment.Moment;\r\n status?: MspecsSubscriberStatus;\r\n serviceId?: string | undefined;\r\n organization?: MspecsOrganization;\r\n isOfficeOptInSubscription?: boolean;\r\n\r\n constructor(data?: IMspecsSubscriber) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.subscriberId = _data[\"subscriberId\"];\r\n this.createdDate = _data[\"createdDate\"] ? moment(_data[\"createdDate\"].toString()) : undefined;\r\n this.status = _data[\"status\"];\r\n this.serviceId = _data[\"serviceId\"];\r\n this.organization = _data[\"organization\"] ? MspecsOrganization.fromJS(_data[\"organization\"]) : undefined;\r\n this.isOfficeOptInSubscription = _data[\"isOfficeOptInSubscription\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): MspecsSubscriber {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new MspecsSubscriber();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"subscriberId\"] = this.subscriberId;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString() : undefined;\r\n data[\"status\"] = this.status;\r\n data[\"serviceId\"] = this.serviceId;\r\n data[\"organization\"] = this.organization ? this.organization.toJSON() : undefined;\r\n data[\"isOfficeOptInSubscription\"] = this.isOfficeOptInSubscription;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IMspecsSubscriber {\r\n subscriberId?: string | undefined;\r\n createdDate?: moment.Moment;\r\n status?: MspecsSubscriberStatus;\r\n serviceId?: string | undefined;\r\n organization?: MspecsOrganization;\r\n isOfficeOptInSubscription?: boolean;\r\n}\r\n\r\nexport class RealEstateOffice implements IRealEstateOffice {\r\n id?: string;\r\n name?: string | undefined;\r\n street?: string | undefined;\r\n city?: string | undefined;\r\n chainId?: string;\r\n\r\n constructor(data?: IRealEstateOffice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n this.street = _data[\"street\"];\r\n this.city = _data[\"city\"];\r\n this.chainId = _data[\"chainId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateOffice {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateOffice();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n data[\"street\"] = this.street;\r\n data[\"city\"] = this.city;\r\n data[\"chainId\"] = this.chainId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateOffice {\r\n id?: string;\r\n name?: string | undefined;\r\n street?: string | undefined;\r\n city?: string | undefined;\r\n chainId?: string;\r\n}\r\n\r\nexport class RealEstateChain implements IRealEstateChain {\r\n id?: string;\r\n name?: string | undefined;\r\n\r\n constructor(data?: IRealEstateChain) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.name = _data[\"name\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateChain {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateChain();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"name\"] = this.name;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateChain {\r\n id?: string;\r\n name?: string | undefined;\r\n}\r\n\r\nexport class RealEstateObjectConsumers implements IRealEstateObjectConsumers {\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n mobile?: string | undefined;\r\n email?: string | undefined;\r\n pid?: string | undefined;\r\n customerType?: CustomerType;\r\n\r\n constructor(data?: IRealEstateObjectConsumers) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.email = _data[\"email\"];\r\n this.pid = _data[\"pid\"];\r\n this.customerType = _data[\"customerType\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateObjectConsumers {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateObjectConsumers();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"email\"] = this.email;\r\n data[\"pid\"] = this.pid;\r\n data[\"customerType\"] = this.customerType;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateObjectConsumers {\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n mobile?: string | undefined;\r\n email?: string | undefined;\r\n pid?: string | undefined;\r\n customerType?: CustomerType;\r\n}\r\n\r\nexport class RealEstateObject implements IRealEstateObject {\r\n id?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n mobile?: string | undefined;\r\n email?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment | undefined;\r\n sellerFirstName?: string | undefined;\r\n sellerLastName?: string | undefined;\r\n sellerMobile?: string | undefined;\r\n sellerEmail?: string | undefined;\r\n area?: number;\r\n housing?: Housing;\r\n internalPropertyNumber?: string | undefined;\r\n lmvNumber?: string | undefined;\r\n realEstateAgent?: RealEstateAgentModel;\r\n realEstateOffice?: RealEstateOffice;\r\n realEstateChain?: RealEstateChain;\r\n sellers?: RealEstateObjectConsumers[] | undefined;\r\n buyers?: RealEstateObjectConsumers[] | undefined;\r\n orderCreated?: boolean;\r\n status?: string | undefined;\r\n statusText?: string | undefined;\r\n\r\n constructor(data?: IRealEstateObject) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.email = _data[\"email\"];\r\n this.street = _data[\"street\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.salesDate = _data[\"salesDate\"] ? moment(_data[\"salesDate\"].toString()) : undefined;\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.sellerFirstName = _data[\"sellerFirstName\"];\r\n this.sellerLastName = _data[\"sellerLastName\"];\r\n this.sellerMobile = _data[\"sellerMobile\"];\r\n this.sellerEmail = _data[\"sellerEmail\"];\r\n this.area = _data[\"area\"];\r\n this.housing = _data[\"housing\"];\r\n this.internalPropertyNumber = _data[\"internalPropertyNumber\"];\r\n this.lmvNumber = _data[\"lmvNumber\"];\r\n this.realEstateAgent = _data[\"realEstateAgent\"] ? RealEstateAgentModel.fromJS(_data[\"realEstateAgent\"]) : undefined;\r\n this.realEstateOffice = _data[\"realEstateOffice\"] ? RealEstateOffice.fromJS(_data[\"realEstateOffice\"]) : undefined;\r\n this.realEstateChain = _data[\"realEstateChain\"] ? RealEstateChain.fromJS(_data[\"realEstateChain\"]) : undefined;\r\n if (Array.isArray(_data[\"sellers\"])) {\r\n this.sellers = [] as any;\r\n for (let item of _data[\"sellers\"])\r\n this.sellers!.push(RealEstateObjectConsumers.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"buyers\"])) {\r\n this.buyers = [] as any;\r\n for (let item of _data[\"buyers\"])\r\n this.buyers!.push(RealEstateObjectConsumers.fromJS(item));\r\n }\r\n this.orderCreated = _data[\"orderCreated\"];\r\n this.status = _data[\"status\"];\r\n this.statusText = _data[\"statusText\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RealEstateObject {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RealEstateObject();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"email\"] = this.email;\r\n data[\"street\"] = this.street;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"salesDate\"] = this.salesDate ? this.salesDate.toISOString() : undefined;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"sellerFirstName\"] = this.sellerFirstName;\r\n data[\"sellerLastName\"] = this.sellerLastName;\r\n data[\"sellerMobile\"] = this.sellerMobile;\r\n data[\"sellerEmail\"] = this.sellerEmail;\r\n data[\"area\"] = this.area;\r\n data[\"housing\"] = this.housing;\r\n data[\"internalPropertyNumber\"] = this.internalPropertyNumber;\r\n data[\"lmvNumber\"] = this.lmvNumber;\r\n data[\"realEstateAgent\"] = this.realEstateAgent ? this.realEstateAgent.toJSON() : undefined;\r\n data[\"realEstateOffice\"] = this.realEstateOffice ? this.realEstateOffice.toJSON() : undefined;\r\n data[\"realEstateChain\"] = this.realEstateChain ? this.realEstateChain.toJSON() : undefined;\r\n if (Array.isArray(this.sellers)) {\r\n data[\"sellers\"] = [];\r\n for (let item of this.sellers)\r\n data[\"sellers\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.buyers)) {\r\n data[\"buyers\"] = [];\r\n for (let item of this.buyers)\r\n data[\"buyers\"].push(item.toJSON());\r\n }\r\n data[\"orderCreated\"] = this.orderCreated;\r\n data[\"status\"] = this.status;\r\n data[\"statusText\"] = this.statusText;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRealEstateObject {\r\n id?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n mobile?: string | undefined;\r\n email?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n startDate?: moment.Moment | undefined;\r\n sellerFirstName?: string | undefined;\r\n sellerLastName?: string | undefined;\r\n sellerMobile?: string | undefined;\r\n sellerEmail?: string | undefined;\r\n area?: number;\r\n housing?: Housing;\r\n internalPropertyNumber?: string | undefined;\r\n lmvNumber?: string | undefined;\r\n realEstateAgent?: RealEstateAgentModel;\r\n realEstateOffice?: RealEstateOffice;\r\n realEstateChain?: RealEstateChain;\r\n sellers?: RealEstateObjectConsumers[] | undefined;\r\n buyers?: RealEstateObjectConsumers[] | undefined;\r\n orderCreated?: boolean;\r\n status?: string | undefined;\r\n statusText?: string | undefined;\r\n}\r\n\r\nexport enum NegotiatePeriod {\r\n THREE_YEARS = \"THREE_YEARS\",\r\n FIVE_YEARS = \"FIVE_YEARS\",\r\n NEVER = \"NEVER\",\r\n ONE_YEAR = \"ONE_YEAR\",\r\n}\r\n\r\nexport class Savings implements ISavings {\r\n averageSaving?: number;\r\n guaranteedSaving?: number;\r\n\r\n constructor(data?: ISavings) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.averageSaving = _data[\"averageSaving\"];\r\n this.guaranteedSaving = _data[\"guaranteedSaving\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Savings {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Savings();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"averageSaving\"] = this.averageSaving;\r\n data[\"guaranteedSaving\"] = this.guaranteedSaving;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISavings {\r\n averageSaving?: number;\r\n guaranteedSaving?: number;\r\n}\r\n\r\nexport class OfferLog implements IOfferLog {\r\n id?: string;\r\n offerId?: string;\r\n ip?: string | undefined;\r\n timestamp?: moment.Moment;\r\n\r\n constructor(data?: IOfferLog) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.offerId = _data[\"offerId\"];\r\n this.ip = _data[\"ip\"];\r\n this.timestamp = _data[\"timestamp\"] ? moment(_data[\"timestamp\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): OfferLog {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OfferLog();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"offerId\"] = this.offerId;\r\n data[\"ip\"] = this.ip;\r\n data[\"timestamp\"] = this.timestamp ? this.timestamp.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOfferLog {\r\n id?: string;\r\n offerId?: string;\r\n ip?: string | undefined;\r\n timestamp?: moment.Moment;\r\n}\r\n\r\nexport class Offer implements IOffer {\r\n id?: string;\r\n status?: number;\r\n pid?: string | undefined;\r\n mobile?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n ean?: string | undefined;\r\n consumption?: number | undefined;\r\n area?: number | undefined;\r\n possibleStartDate?: moment.Moment | undefined;\r\n email?: string | undefined;\r\n comparingMonth?: number | undefined;\r\n variablePriceRebel?: number | undefined;\r\n fixedPriceRebel?: number | undefined;\r\n variablePriceCompetitor?: number | undefined;\r\n fixedPriceCompetitor?: number | undefined;\r\n comparingCompetitor?: string | undefined;\r\n salesChannel?: Channel;\r\n contactChannel?: ContactChannel;\r\n createdOn?: moment.Moment;\r\n netArea?: string | undefined;\r\n club?: string | undefined;\r\n team?: string | undefined;\r\n housing?: Housing;\r\n customText?: string | undefined;\r\n negotiatePeriod?: NegotiatePeriod;\r\n advisor?: string | undefined;\r\n savings?: Savings;\r\n externalId?: string | undefined;\r\n unsubscribed?: boolean;\r\n logs?: OfferLog[] | undefined;\r\n orders?: Order[] | undefined;\r\n reminderSent?: moment.Moment | undefined;\r\n modifiedOn?: moment.Moment;\r\n\r\n constructor(data?: IOffer) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.status = _data[\"status\"];\r\n this.pid = _data[\"pid\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.street = _data[\"street\"];\r\n this.zipCode = _data[\"zipCode\"];\r\n this.city = _data[\"city\"];\r\n this.ean = _data[\"ean\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.area = _data[\"area\"];\r\n this.possibleStartDate = _data[\"possibleStartDate\"] ? moment(_data[\"possibleStartDate\"].toString()) : undefined;\r\n this.email = _data[\"email\"];\r\n this.comparingMonth = _data[\"comparingMonth\"];\r\n this.variablePriceRebel = _data[\"variablePriceRebel\"];\r\n this.fixedPriceRebel = _data[\"fixedPriceRebel\"];\r\n this.variablePriceCompetitor = _data[\"variablePriceCompetitor\"];\r\n this.fixedPriceCompetitor = _data[\"fixedPriceCompetitor\"];\r\n this.comparingCompetitor = _data[\"comparingCompetitor\"];\r\n this.salesChannel = _data[\"salesChannel\"];\r\n this.contactChannel = _data[\"contactChannel\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.netArea = _data[\"netArea\"];\r\n this.club = _data[\"club\"];\r\n this.team = _data[\"team\"];\r\n this.housing = _data[\"housing\"];\r\n this.customText = _data[\"customText\"];\r\n this.negotiatePeriod = _data[\"negotiatePeriod\"];\r\n this.advisor = _data[\"advisor\"];\r\n this.savings = _data[\"savings\"] ? Savings.fromJS(_data[\"savings\"]) : undefined;\r\n this.externalId = _data[\"externalId\"];\r\n this.unsubscribed = _data[\"unsubscribed\"];\r\n if (Array.isArray(_data[\"logs\"])) {\r\n this.logs = [] as any;\r\n for (let item of _data[\"logs\"])\r\n this.logs!.push(OfferLog.fromJS(item));\r\n }\r\n if (Array.isArray(_data[\"orders\"])) {\r\n this.orders = [] as any;\r\n for (let item of _data[\"orders\"])\r\n this.orders!.push(Order.fromJS(item));\r\n }\r\n this.reminderSent = _data[\"reminderSent\"] ? moment(_data[\"reminderSent\"].toString()) : undefined;\r\n this.modifiedOn = _data[\"modifiedOn\"] ? moment(_data[\"modifiedOn\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): Offer {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Offer();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"status\"] = this.status;\r\n data[\"pid\"] = this.pid;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"street\"] = this.street;\r\n data[\"zipCode\"] = this.zipCode;\r\n data[\"city\"] = this.city;\r\n data[\"ean\"] = this.ean;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"area\"] = this.area;\r\n data[\"possibleStartDate\"] = this.possibleStartDate ? this.possibleStartDate.toISOString() : undefined;\r\n data[\"email\"] = this.email;\r\n data[\"comparingMonth\"] = this.comparingMonth;\r\n data[\"variablePriceRebel\"] = this.variablePriceRebel;\r\n data[\"fixedPriceRebel\"] = this.fixedPriceRebel;\r\n data[\"variablePriceCompetitor\"] = this.variablePriceCompetitor;\r\n data[\"fixedPriceCompetitor\"] = this.fixedPriceCompetitor;\r\n data[\"comparingCompetitor\"] = this.comparingCompetitor;\r\n data[\"salesChannel\"] = this.salesChannel;\r\n data[\"contactChannel\"] = this.contactChannel;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"netArea\"] = this.netArea;\r\n data[\"club\"] = this.club;\r\n data[\"team\"] = this.team;\r\n data[\"housing\"] = this.housing;\r\n data[\"customText\"] = this.customText;\r\n data[\"negotiatePeriod\"] = this.negotiatePeriod;\r\n data[\"advisor\"] = this.advisor;\r\n data[\"savings\"] = this.savings ? this.savings.toJSON() : undefined;\r\n data[\"externalId\"] = this.externalId;\r\n data[\"unsubscribed\"] = this.unsubscribed;\r\n if (Array.isArray(this.logs)) {\r\n data[\"logs\"] = [];\r\n for (let item of this.logs)\r\n data[\"logs\"].push(item.toJSON());\r\n }\r\n if (Array.isArray(this.orders)) {\r\n data[\"orders\"] = [];\r\n for (let item of this.orders)\r\n data[\"orders\"].push(item.toJSON());\r\n }\r\n data[\"reminderSent\"] = this.reminderSent ? this.reminderSent.toISOString() : undefined;\r\n data[\"modifiedOn\"] = this.modifiedOn ? this.modifiedOn.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOffer {\r\n id?: string;\r\n status?: number;\r\n pid?: string | undefined;\r\n mobile?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n street?: string | undefined;\r\n zipCode?: string | undefined;\r\n city?: string | undefined;\r\n ean?: string | undefined;\r\n consumption?: number | undefined;\r\n area?: number | undefined;\r\n possibleStartDate?: moment.Moment | undefined;\r\n email?: string | undefined;\r\n comparingMonth?: number | undefined;\r\n variablePriceRebel?: number | undefined;\r\n fixedPriceRebel?: number | undefined;\r\n variablePriceCompetitor?: number | undefined;\r\n fixedPriceCompetitor?: number | undefined;\r\n comparingCompetitor?: string | undefined;\r\n salesChannel?: Channel;\r\n contactChannel?: ContactChannel;\r\n createdOn?: moment.Moment;\r\n netArea?: string | undefined;\r\n club?: string | undefined;\r\n team?: string | undefined;\r\n housing?: Housing;\r\n customText?: string | undefined;\r\n negotiatePeriod?: NegotiatePeriod;\r\n advisor?: string | undefined;\r\n savings?: Savings;\r\n externalId?: string | undefined;\r\n unsubscribed?: boolean;\r\n logs?: OfferLog[] | undefined;\r\n orders?: Order[] | undefined;\r\n reminderSent?: moment.Moment | undefined;\r\n modifiedOn?: moment.Moment;\r\n}\r\n\r\nexport class OrderStatus implements IOrderStatus {\r\n name?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n adress?: string | undefined;\r\n salesChannel?: string | undefined;\r\n startdate?: string | undefined;\r\n status?: string | undefined;\r\n statusText?: string | undefined;\r\n netOwner?: string | undefined;\r\n\r\n constructor(data?: IOrderStatus) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.name = _data[\"name\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.adress = _data[\"adress\"];\r\n this.salesChannel = _data[\"salesChannel\"];\r\n this.startdate = _data[\"startdate\"];\r\n this.status = _data[\"status\"];\r\n this.statusText = _data[\"statusText\"];\r\n this.netOwner = _data[\"netOwner\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OrderStatus {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OrderStatus();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"name\"] = this.name;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"adress\"] = this.adress;\r\n data[\"salesChannel\"] = this.salesChannel;\r\n data[\"startdate\"] = this.startdate;\r\n data[\"status\"] = this.status;\r\n data[\"statusText\"] = this.statusText;\r\n data[\"netOwner\"] = this.netOwner;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOrderStatus {\r\n name?: string | undefined;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n adress?: string | undefined;\r\n salesChannel?: string | undefined;\r\n startdate?: string | undefined;\r\n status?: string | undefined;\r\n statusText?: string | undefined;\r\n netOwner?: string | undefined;\r\n}\r\n\r\nexport class PriceResponse implements IPriceResponse {\r\n consumtion?: number;\r\n month?: number;\r\n\r\n constructor(data?: IPriceResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.consumtion = _data[\"consumtion\"];\r\n this.month = _data[\"month\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): PriceResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new PriceResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"consumtion\"] = this.consumtion;\r\n data[\"month\"] = this.month;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IPriceResponse {\r\n consumtion?: number;\r\n month?: number;\r\n}\r\n\r\nexport class AveragePrices implements IAveragePrices {\r\n price2000?: number;\r\n price5000?: number;\r\n price20000?: number;\r\n\r\n constructor(data?: IAveragePrices) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.price2000 = _data[\"price2000\"];\r\n this.price5000 = _data[\"price5000\"];\r\n this.price20000 = _data[\"price20000\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AveragePrices {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AveragePrices();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"price2000\"] = this.price2000;\r\n data[\"price5000\"] = this.price5000;\r\n data[\"price20000\"] = this.price20000;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAveragePrices {\r\n price2000?: number;\r\n price5000?: number;\r\n price20000?: number;\r\n}\r\n\r\nexport class SpotPrice implements ISpotPrice {\r\n fromDate?: moment.Moment;\r\n price?: number;\r\n priceSE1?: number;\r\n priceSE2?: number;\r\n priceSE3?: number;\r\n priceSE4?: number;\r\n priceCertificate?: number;\r\n priceEnvironment?: number;\r\n priceProfileCostSE1?: number;\r\n priceProfileCostSE2?: number;\r\n priceProfileCostSE3?: number;\r\n priceProfileCostSE4?: number;\r\n priceBalanceCost?: number;\r\n priceSupplierCost?: number;\r\n priceAdministrationCost?: number;\r\n\r\n constructor(data?: ISpotPrice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.fromDate = _data[\"fromDate\"] ? moment(_data[\"fromDate\"].toString()) : undefined;\r\n this.price = _data[\"price\"];\r\n this.priceSE1 = _data[\"priceSE1\"];\r\n this.priceSE2 = _data[\"priceSE2\"];\r\n this.priceSE3 = _data[\"priceSE3\"];\r\n this.priceSE4 = _data[\"priceSE4\"];\r\n this.priceCertificate = _data[\"priceCertificate\"];\r\n this.priceEnvironment = _data[\"priceEnvironment\"];\r\n this.priceProfileCostSE1 = _data[\"priceProfileCostSE1\"];\r\n this.priceProfileCostSE2 = _data[\"priceProfileCostSE2\"];\r\n this.priceProfileCostSE3 = _data[\"priceProfileCostSE3\"];\r\n this.priceProfileCostSE4 = _data[\"priceProfileCostSE4\"];\r\n this.priceBalanceCost = _data[\"priceBalanceCost\"];\r\n this.priceSupplierCost = _data[\"priceSupplierCost\"];\r\n this.priceAdministrationCost = _data[\"priceAdministrationCost\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SpotPrice {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SpotPrice();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"fromDate\"] = this.fromDate ? this.fromDate.toISOString() : undefined;\r\n data[\"price\"] = this.price;\r\n data[\"priceSE1\"] = this.priceSE1;\r\n data[\"priceSE2\"] = this.priceSE2;\r\n data[\"priceSE3\"] = this.priceSE3;\r\n data[\"priceSE4\"] = this.priceSE4;\r\n data[\"priceCertificate\"] = this.priceCertificate;\r\n data[\"priceEnvironment\"] = this.priceEnvironment;\r\n data[\"priceProfileCostSE1\"] = this.priceProfileCostSE1;\r\n data[\"priceProfileCostSE2\"] = this.priceProfileCostSE2;\r\n data[\"priceProfileCostSE3\"] = this.priceProfileCostSE3;\r\n data[\"priceProfileCostSE4\"] = this.priceProfileCostSE4;\r\n data[\"priceBalanceCost\"] = this.priceBalanceCost;\r\n data[\"priceSupplierCost\"] = this.priceSupplierCost;\r\n data[\"priceAdministrationCost\"] = this.priceAdministrationCost;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISpotPrice {\r\n fromDate?: moment.Moment;\r\n price?: number;\r\n priceSE1?: number;\r\n priceSE2?: number;\r\n priceSE3?: number;\r\n priceSE4?: number;\r\n priceCertificate?: number;\r\n priceEnvironment?: number;\r\n priceProfileCostSE1?: number;\r\n priceProfileCostSE2?: number;\r\n priceProfileCostSE3?: number;\r\n priceProfileCostSE4?: number;\r\n priceBalanceCost?: number;\r\n priceSupplierCost?: number;\r\n priceAdministrationCost?: number;\r\n}\r\n\r\nexport class ReportUserPermission implements IReportUserPermission {\r\n id?: string;\r\n userId?: string;\r\n agentId?: string | undefined;\r\n agent?: RealEstateAgentModel;\r\n officeId?: string | undefined;\r\n office?: RealEstateOfficeModel;\r\n chainId?: string | undefined;\r\n chain?: RealEstateChainModel;\r\n ownerId?: string | undefined;\r\n owner?: RealEstateChainOwner;\r\n\r\n constructor(data?: IReportUserPermission) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.userId = _data[\"userId\"];\r\n this.agentId = _data[\"agentId\"];\r\n this.agent = _data[\"agent\"] ? RealEstateAgentModel.fromJS(_data[\"agent\"]) : undefined;\r\n this.officeId = _data[\"officeId\"];\r\n this.office = _data[\"office\"] ? RealEstateOfficeModel.fromJS(_data[\"office\"]) : undefined;\r\n this.chainId = _data[\"chainId\"];\r\n this.chain = _data[\"chain\"] ? RealEstateChainModel.fromJS(_data[\"chain\"]) : undefined;\r\n this.ownerId = _data[\"ownerId\"];\r\n this.owner = _data[\"owner\"] ? RealEstateChainOwner.fromJS(_data[\"owner\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportUserPermission {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportUserPermission();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"userId\"] = this.userId;\r\n data[\"agentId\"] = this.agentId;\r\n data[\"agent\"] = this.agent ? this.agent.toJSON() : undefined;\r\n data[\"officeId\"] = this.officeId;\r\n data[\"office\"] = this.office ? this.office.toJSON() : undefined;\r\n data[\"chainId\"] = this.chainId;\r\n data[\"chain\"] = this.chain ? this.chain.toJSON() : undefined;\r\n data[\"ownerId\"] = this.ownerId;\r\n data[\"owner\"] = this.owner ? this.owner.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportUserPermission {\r\n id?: string;\r\n userId?: string;\r\n agentId?: string | undefined;\r\n agent?: RealEstateAgentModel;\r\n officeId?: string | undefined;\r\n office?: RealEstateOfficeModel;\r\n chainId?: string | undefined;\r\n chain?: RealEstateChainModel;\r\n ownerId?: string | undefined;\r\n owner?: RealEstateChainOwner;\r\n}\r\n\r\nexport class ReportUser implements IReportUser {\r\n id?: string;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n pid?: string | undefined;\r\n office?: RealEstateOfficeModel;\r\n chain?: RealEstateChainModel;\r\n owner?: RealEstateChainOwner;\r\n permissions?: ReportUserPermission[] | undefined;\r\n showElectricity?: boolean;\r\n showInsurance?: boolean;\r\n showMortgage?: boolean;\r\n showConversion?: boolean;\r\n showExecutiveReport?: boolean;\r\n showInsuranceSalesReport?: boolean;\r\n showMortgageSalesReport?: boolean;\r\n showElectricitySalesReport?: boolean;\r\n isAdmin?: boolean;\r\n\r\n constructor(data?: IReportUser) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.pid = _data[\"pid\"];\r\n this.office = _data[\"office\"] ? RealEstateOfficeModel.fromJS(_data[\"office\"]) : undefined;\r\n this.chain = _data[\"chain\"] ? RealEstateChainModel.fromJS(_data[\"chain\"]) : undefined;\r\n this.owner = _data[\"owner\"] ? RealEstateChainOwner.fromJS(_data[\"owner\"]) : undefined;\r\n if (Array.isArray(_data[\"permissions\"])) {\r\n this.permissions = [] as any;\r\n for (let item of _data[\"permissions\"])\r\n this.permissions!.push(ReportUserPermission.fromJS(item));\r\n }\r\n this.showElectricity = _data[\"showElectricity\"];\r\n this.showInsurance = _data[\"showInsurance\"];\r\n this.showMortgage = _data[\"showMortgage\"];\r\n this.showConversion = _data[\"showConversion\"];\r\n this.showExecutiveReport = _data[\"showExecutiveReport\"];\r\n this.showInsuranceSalesReport = _data[\"showInsuranceSalesReport\"];\r\n this.showMortgageSalesReport = _data[\"showMortgageSalesReport\"];\r\n this.showElectricitySalesReport = _data[\"showElectricitySalesReport\"];\r\n this.isAdmin = _data[\"isAdmin\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportUser {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportUser();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"pid\"] = this.pid;\r\n data[\"office\"] = this.office ? this.office.toJSON() : undefined;\r\n data[\"chain\"] = this.chain ? this.chain.toJSON() : undefined;\r\n data[\"owner\"] = this.owner ? this.owner.toJSON() : undefined;\r\n if (Array.isArray(this.permissions)) {\r\n data[\"permissions\"] = [];\r\n for (let item of this.permissions)\r\n data[\"permissions\"].push(item.toJSON());\r\n }\r\n data[\"showElectricity\"] = this.showElectricity;\r\n data[\"showInsurance\"] = this.showInsurance;\r\n data[\"showMortgage\"] = this.showMortgage;\r\n data[\"showConversion\"] = this.showConversion;\r\n data[\"showExecutiveReport\"] = this.showExecutiveReport;\r\n data[\"showInsuranceSalesReport\"] = this.showInsuranceSalesReport;\r\n data[\"showMortgageSalesReport\"] = this.showMortgageSalesReport;\r\n data[\"showElectricitySalesReport\"] = this.showElectricitySalesReport;\r\n data[\"isAdmin\"] = this.isAdmin;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportUser {\r\n id?: string;\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n pid?: string | undefined;\r\n office?: RealEstateOfficeModel;\r\n chain?: RealEstateChainModel;\r\n owner?: RealEstateChainOwner;\r\n permissions?: ReportUserPermission[] | undefined;\r\n showElectricity?: boolean;\r\n showInsurance?: boolean;\r\n showMortgage?: boolean;\r\n showConversion?: boolean;\r\n showExecutiveReport?: boolean;\r\n showInsuranceSalesReport?: boolean;\r\n showMortgageSalesReport?: boolean;\r\n showElectricitySalesReport?: boolean;\r\n isAdmin?: boolean;\r\n}\r\n\r\nexport class ReportResponseItem implements IReportResponseItem {\r\n id?: string | undefined;\r\n agent?: string | undefined;\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n salesMonth?: number;\r\n salesYear?: number;\r\n createdDate?: moment.Moment;\r\n propertyAdress?: string | undefined;\r\n\r\n constructor(data?: IReportResponseItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.agent = _data[\"agent\"];\r\n this.chain = _data[\"chain\"];\r\n this.office = _data[\"office\"];\r\n this.officeAddress = _data[\"officeAddress\"];\r\n this.group = _data[\"group\"];\r\n this.salesDate = _data[\"salesDate\"] ? moment(_data[\"salesDate\"].toString()) : undefined;\r\n this.salesMonth = _data[\"salesMonth\"];\r\n this.salesYear = _data[\"salesYear\"];\r\n this.createdDate = _data[\"createdDate\"] ? moment(_data[\"createdDate\"].toString()) : undefined;\r\n this.propertyAdress = _data[\"propertyAdress\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportResponseItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportResponseItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"agent\"] = this.agent;\r\n data[\"chain\"] = this.chain;\r\n data[\"office\"] = this.office;\r\n data[\"officeAddress\"] = this.officeAddress;\r\n data[\"group\"] = this.group;\r\n data[\"salesDate\"] = this.salesDate ? this.salesDate.toISOString() : undefined;\r\n data[\"salesMonth\"] = this.salesMonth;\r\n data[\"salesYear\"] = this.salesYear;\r\n data[\"createdDate\"] = this.createdDate ? this.createdDate.toISOString() : undefined;\r\n data[\"propertyAdress\"] = this.propertyAdress;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportResponseItem {\r\n id?: string | undefined;\r\n agent?: string | undefined;\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n salesDate?: moment.Moment | undefined;\r\n salesMonth?: number;\r\n salesYear?: number;\r\n createdDate?: moment.Moment;\r\n propertyAdress?: string | undefined;\r\n}\r\n\r\nexport class ReportResponse implements IReportResponse {\r\n responseItems?: ReportResponseItem[] | undefined;\r\n\r\n constructor(data?: IReportResponse) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n if (Array.isArray(_data[\"responseItems\"])) {\r\n this.responseItems = [] as any;\r\n for (let item of _data[\"responseItems\"])\r\n this.responseItems!.push(ReportResponseItem.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportResponse {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportResponse();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n if (Array.isArray(this.responseItems)) {\r\n data[\"responseItems\"] = [];\r\n for (let item of this.responseItems)\r\n data[\"responseItems\"].push(item.toJSON());\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportResponse {\r\n responseItems?: ReportResponseItem[] | undefined;\r\n}\r\n\r\nexport class ConversionResponseItem implements IConversionResponseItem {\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n date?: string | undefined;\r\n totalSales?: number;\r\n orders?: number;\r\n\r\n constructor(data?: IConversionResponseItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.chain = _data[\"chain\"];\r\n this.office = _data[\"office\"];\r\n this.officeAddress = _data[\"officeAddress\"];\r\n this.group = _data[\"group\"];\r\n this.date = _data[\"date\"];\r\n this.totalSales = _data[\"totalSales\"];\r\n this.orders = _data[\"orders\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ConversionResponseItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ConversionResponseItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"chain\"] = this.chain;\r\n data[\"office\"] = this.office;\r\n data[\"officeAddress\"] = this.officeAddress;\r\n data[\"group\"] = this.group;\r\n data[\"date\"] = this.date;\r\n data[\"totalSales\"] = this.totalSales;\r\n data[\"orders\"] = this.orders;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConversionResponseItem {\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n date?: string | undefined;\r\n totalSales?: number;\r\n orders?: number;\r\n}\r\n\r\nexport class ExecutiveReportResponseItem implements IExecutiveReportResponseItem {\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n salesYTD?: number;\r\n ordersYTD?: number;\r\n salesThisMonth?: number;\r\n ordersThisMonth?: number;\r\n salesLastMonth?: number;\r\n ordersLastMonth?: number;\r\n\r\n constructor(data?: IExecutiveReportResponseItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.chain = _data[\"chain\"];\r\n this.office = _data[\"office\"];\r\n this.officeAddress = _data[\"officeAddress\"];\r\n this.group = _data[\"group\"];\r\n this.salesYTD = _data[\"salesYTD\"];\r\n this.ordersYTD = _data[\"ordersYTD\"];\r\n this.salesThisMonth = _data[\"salesThisMonth\"];\r\n this.ordersThisMonth = _data[\"ordersThisMonth\"];\r\n this.salesLastMonth = _data[\"salesLastMonth\"];\r\n this.ordersLastMonth = _data[\"ordersLastMonth\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ExecutiveReportResponseItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ExecutiveReportResponseItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"chain\"] = this.chain;\r\n data[\"office\"] = this.office;\r\n data[\"officeAddress\"] = this.officeAddress;\r\n data[\"group\"] = this.group;\r\n data[\"salesYTD\"] = this.salesYTD;\r\n data[\"ordersYTD\"] = this.ordersYTD;\r\n data[\"salesThisMonth\"] = this.salesThisMonth;\r\n data[\"ordersThisMonth\"] = this.ordersThisMonth;\r\n data[\"salesLastMonth\"] = this.salesLastMonth;\r\n data[\"ordersLastMonth\"] = this.ordersLastMonth;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IExecutiveReportResponseItem {\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n salesYTD?: number;\r\n ordersYTD?: number;\r\n salesThisMonth?: number;\r\n ordersThisMonth?: number;\r\n salesLastMonth?: number;\r\n ordersLastMonth?: number;\r\n}\r\n\r\nexport class SalesResponseItem implements ISalesResponseItem {\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n date?: string | undefined;\r\n acceptedOrders?: number;\r\n rejectedOrders?: number;\r\n\r\n constructor(data?: ISalesResponseItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.chain = _data[\"chain\"];\r\n this.office = _data[\"office\"];\r\n this.officeAddress = _data[\"officeAddress\"];\r\n this.group = _data[\"group\"];\r\n this.date = _data[\"date\"];\r\n this.acceptedOrders = _data[\"acceptedOrders\"];\r\n this.rejectedOrders = _data[\"rejectedOrders\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): SalesResponseItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new SalesResponseItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"chain\"] = this.chain;\r\n data[\"office\"] = this.office;\r\n data[\"officeAddress\"] = this.officeAddress;\r\n data[\"group\"] = this.group;\r\n data[\"date\"] = this.date;\r\n data[\"acceptedOrders\"] = this.acceptedOrders;\r\n data[\"rejectedOrders\"] = this.rejectedOrders;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface ISalesResponseItem {\r\n chain?: string | undefined;\r\n office?: string | undefined;\r\n officeAddress?: string | undefined;\r\n group?: string | undefined;\r\n date?: string | undefined;\r\n acceptedOrders?: number;\r\n rejectedOrders?: number;\r\n}\r\n\r\nexport class ReportUserUpdate implements IReportUserUpdate {\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n pid?: string | undefined;\r\n showElectricity?: boolean;\r\n showInsurance?: boolean;\r\n showMortgage?: boolean;\r\n showConversion?: boolean;\r\n showExecutiveReport?: boolean;\r\n showInsuranceSalesReport?: boolean;\r\n showMortgageSalesReport?: boolean;\r\n showElectricitySalesReport?: boolean;\r\n\r\n constructor(data?: IReportUserUpdate) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.firstName = _data[\"firstName\"];\r\n this.lastName = _data[\"lastName\"];\r\n this.pid = _data[\"pid\"];\r\n this.showElectricity = _data[\"showElectricity\"];\r\n this.showInsurance = _data[\"showInsurance\"];\r\n this.showMortgage = _data[\"showMortgage\"];\r\n this.showConversion = _data[\"showConversion\"];\r\n this.showExecutiveReport = _data[\"showExecutiveReport\"];\r\n this.showInsuranceSalesReport = _data[\"showInsuranceSalesReport\"];\r\n this.showMortgageSalesReport = _data[\"showMortgageSalesReport\"];\r\n this.showElectricitySalesReport = _data[\"showElectricitySalesReport\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportUserUpdate {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportUserUpdate();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"firstName\"] = this.firstName;\r\n data[\"lastName\"] = this.lastName;\r\n data[\"pid\"] = this.pid;\r\n data[\"showElectricity\"] = this.showElectricity;\r\n data[\"showInsurance\"] = this.showInsurance;\r\n data[\"showMortgage\"] = this.showMortgage;\r\n data[\"showConversion\"] = this.showConversion;\r\n data[\"showExecutiveReport\"] = this.showExecutiveReport;\r\n data[\"showInsuranceSalesReport\"] = this.showInsuranceSalesReport;\r\n data[\"showMortgageSalesReport\"] = this.showMortgageSalesReport;\r\n data[\"showElectricitySalesReport\"] = this.showElectricitySalesReport;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportUserUpdate {\r\n firstName?: string | undefined;\r\n lastName?: string | undefined;\r\n pid?: string | undefined;\r\n showElectricity?: boolean;\r\n showInsurance?: boolean;\r\n showMortgage?: boolean;\r\n showConversion?: boolean;\r\n showExecutiveReport?: boolean;\r\n showInsuranceSalesReport?: boolean;\r\n showMortgageSalesReport?: boolean;\r\n showElectricitySalesReport?: boolean;\r\n}\r\n\r\nexport class ReportUserPermissionUpdate implements IReportUserPermissionUpdate {\r\n agentId?: string | undefined;\r\n officeId?: string | undefined;\r\n chainId?: string | undefined;\r\n ownerId?: string | undefined;\r\n\r\n constructor(data?: IReportUserPermissionUpdate) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.agentId = _data[\"agentId\"];\r\n this.officeId = _data[\"officeId\"];\r\n this.chainId = _data[\"chainId\"];\r\n this.ownerId = _data[\"ownerId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): ReportUserPermissionUpdate {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new ReportUserPermissionUpdate();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"agentId\"] = this.agentId;\r\n data[\"officeId\"] = this.officeId;\r\n data[\"chainId\"] = this.chainId;\r\n data[\"ownerId\"] = this.ownerId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IReportUserPermissionUpdate {\r\n agentId?: string | undefined;\r\n officeId?: string | undefined;\r\n chainId?: string | undefined;\r\n ownerId?: string | undefined;\r\n}\r\n\r\nexport class OfficeItem implements IOfficeItem {\r\n officeId?: string | undefined;\r\n office?: string | undefined;\r\n chain?: string | undefined;\r\n count?: number;\r\n\r\n constructor(data?: IOfficeItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.officeId = _data[\"officeId\"];\r\n this.office = _data[\"office\"];\r\n this.chain = _data[\"chain\"];\r\n this.count = _data[\"count\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): OfficeItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new OfficeItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"officeId\"] = this.officeId;\r\n data[\"office\"] = this.office;\r\n data[\"chain\"] = this.chain;\r\n data[\"count\"] = this.count;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IOfficeItem {\r\n officeId?: string | undefined;\r\n office?: string | undefined;\r\n chain?: string | undefined;\r\n count?: number;\r\n}\r\n\r\nexport class HistoryItem implements IHistoryItem {\r\n monthIndex?: string | undefined;\r\n monthName?: string | undefined;\r\n count?: number;\r\n\r\n constructor(data?: IHistoryItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.monthIndex = _data[\"monthIndex\"];\r\n this.monthName = _data[\"monthName\"];\r\n this.count = _data[\"count\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): HistoryItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new HistoryItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"monthIndex\"] = this.monthIndex;\r\n data[\"monthName\"] = this.monthName;\r\n data[\"count\"] = this.count;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IHistoryItem {\r\n monthIndex?: string | undefined;\r\n monthName?: string | undefined;\r\n count?: number;\r\n}\r\n\r\nexport class AgentItem implements IAgentItem {\r\n agentId?: string | undefined;\r\n agent?: string | undefined;\r\n count?: number;\r\n office?: string | undefined;\r\n\r\n constructor(data?: IAgentItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.agentId = _data[\"agentId\"];\r\n this.agent = _data[\"agent\"];\r\n this.count = _data[\"count\"];\r\n this.office = _data[\"office\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): AgentItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new AgentItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"agentId\"] = this.agentId;\r\n data[\"agent\"] = this.agent;\r\n data[\"count\"] = this.count;\r\n data[\"office\"] = this.office;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IAgentItem {\r\n agentId?: string | undefined;\r\n agent?: string | undefined;\r\n count?: number;\r\n office?: string | undefined;\r\n}\r\n\r\nexport class Consumption implements IConsumption {\r\n propertyId?: string | undefined;\r\n year?: number;\r\n month?: number;\r\n amount?: number;\r\n date?: moment.Moment;\r\n startTime?: moment.Moment;\r\n endTime?: moment.Moment;\r\n\r\n constructor(data?: IConsumption) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.propertyId = _data[\"propertyId\"];\r\n this.year = _data[\"year\"];\r\n this.month = _data[\"month\"];\r\n this.amount = _data[\"amount\"];\r\n this.date = _data[\"date\"] ? moment(_data[\"date\"].toString()) : undefined;\r\n this.startTime = _data[\"startTime\"] ? moment(_data[\"startTime\"].toString()) : undefined;\r\n this.endTime = _data[\"endTime\"] ? moment(_data[\"endTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): Consumption {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Consumption();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"propertyId\"] = this.propertyId;\r\n data[\"year\"] = this.year;\r\n data[\"month\"] = this.month;\r\n data[\"amount\"] = this.amount;\r\n data[\"date\"] = this.date ? this.date.toISOString() : undefined;\r\n data[\"startTime\"] = this.startTime ? this.startTime.toISOString() : undefined;\r\n data[\"endTime\"] = this.endTime ? this.endTime.toISOString() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IConsumption {\r\n propertyId?: string | undefined;\r\n year?: number;\r\n month?: number;\r\n amount?: number;\r\n date?: moment.Moment;\r\n startTime?: moment.Moment;\r\n endTime?: moment.Moment;\r\n}\r\n\r\nexport class FixedPrice implements IFixedPrice {\r\n price?: number;\r\n\r\n constructor(data?: IFixedPrice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.price = _data[\"price\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): FixedPrice {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new FixedPrice();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"price\"] = this.price;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IFixedPrice {\r\n price?: number;\r\n}\r\n\r\nexport class VariablePrice implements IVariablePrice {\r\n startDate?: moment.Moment;\r\n price?: number;\r\n complete?: boolean;\r\n\r\n constructor(data?: IVariablePrice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.price = _data[\"price\"];\r\n this.complete = _data[\"complete\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): VariablePrice {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VariablePrice();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"price\"] = this.price;\r\n data[\"complete\"] = this.complete;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IVariablePrice {\r\n startDate?: moment.Moment;\r\n price?: number;\r\n complete?: boolean;\r\n}\r\n\r\nexport enum EstimatedMonthSource {\r\n HOURS = \"HOURS\",\r\n MONTH = \"MONTH\",\r\n HISTORIC_MONTH = \"HISTORIC_MONTH\",\r\n PLANNED = \"PLANNED\",\r\n CALCULATED = \"CALCULATED\",\r\n}\r\n\r\nexport class EstimatedMonth implements IEstimatedMonth {\r\n currentConsumption?: number;\r\n estimatedConsumption?: number;\r\n currentCost?: number;\r\n estimatedCost?: number;\r\n estimatedPrice?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n deliveryId?: string;\r\n complete?: boolean;\r\n source?: EstimatedMonthSource;\r\n\r\n constructor(data?: IEstimatedMonth) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.currentConsumption = _data[\"currentConsumption\"];\r\n this.estimatedConsumption = _data[\"estimatedConsumption\"];\r\n this.currentCost = _data[\"currentCost\"];\r\n this.estimatedCost = _data[\"estimatedCost\"];\r\n this.estimatedPrice = _data[\"estimatedPrice\"];\r\n this.startDate = _data[\"startDate\"] ? moment(_data[\"startDate\"].toString()) : undefined;\r\n this.endDate = _data[\"endDate\"] ? moment(_data[\"endDate\"].toString()) : undefined;\r\n this.deliveryId = _data[\"deliveryId\"];\r\n this.complete = _data[\"complete\"];\r\n this.source = _data[\"source\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EstimatedMonth {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EstimatedMonth();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"currentConsumption\"] = this.currentConsumption;\r\n data[\"estimatedConsumption\"] = this.estimatedConsumption;\r\n data[\"currentCost\"] = this.currentCost;\r\n data[\"estimatedCost\"] = this.estimatedCost;\r\n data[\"estimatedPrice\"] = this.estimatedPrice;\r\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString() : undefined;\r\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString() : undefined;\r\n data[\"deliveryId\"] = this.deliveryId;\r\n data[\"complete\"] = this.complete;\r\n data[\"source\"] = this.source;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEstimatedMonth {\r\n currentConsumption?: number;\r\n estimatedConsumption?: number;\r\n currentCost?: number;\r\n estimatedCost?: number;\r\n estimatedPrice?: number;\r\n startDate?: moment.Moment;\r\n endDate?: moment.Moment | undefined;\r\n deliveryId?: string;\r\n complete?: boolean;\r\n source?: EstimatedMonthSource;\r\n}\r\n\r\nexport class EstimationItem implements IEstimationItem {\r\n id?: string;\r\n title?: string | undefined;\r\n description?: string | undefined;\r\n consumption?: number;\r\n hours?: number;\r\n sortIndex?: number;\r\n icon?: string | undefined;\r\n\r\n constructor(data?: IEstimationItem) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.title = _data[\"title\"];\r\n this.description = _data[\"description\"];\r\n this.consumption = _data[\"consumption\"];\r\n this.hours = _data[\"hours\"];\r\n this.sortIndex = _data[\"sortIndex\"];\r\n this.icon = _data[\"icon\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): EstimationItem {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new EstimationItem();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"title\"] = this.title;\r\n data[\"description\"] = this.description;\r\n data[\"consumption\"] = this.consumption;\r\n data[\"hours\"] = this.hours;\r\n data[\"sortIndex\"] = this.sortIndex;\r\n data[\"icon\"] = this.icon;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IEstimationItem {\r\n id?: string;\r\n title?: string | undefined;\r\n description?: string | undefined;\r\n consumption?: number;\r\n hours?: number;\r\n sortIndex?: number;\r\n icon?: string | undefined;\r\n}\r\n\r\nexport enum BillogramStatus {\r\n DRAFT = \"DRAFT\",\r\n UNPAID = \"UNPAID\",\r\n PAID = \"PAID\",\r\n ENDED = \"ENDED\",\r\n SCHEDULED = \"SCHEDULED\",\r\n}\r\n\r\nexport class Billogram implements IBillogram {\r\n id?: string | undefined;\r\n totalSum?: number;\r\n remainingSum?: number;\r\n invoiceDate?: moment.Moment;\r\n url?: string | undefined;\r\n status?: BillogramStatus;\r\n\r\n constructor(data?: IBillogram) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.totalSum = _data[\"totalSum\"];\r\n this.remainingSum = _data[\"remainingSum\"];\r\n this.invoiceDate = _data[\"invoiceDate\"] ? moment(_data[\"invoiceDate\"].toString()) : undefined;\r\n this.url = _data[\"url\"];\r\n this.status = _data[\"status\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Billogram {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Billogram();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"totalSum\"] = this.totalSum;\r\n data[\"remainingSum\"] = this.remainingSum;\r\n data[\"invoiceDate\"] = this.invoiceDate ? this.invoiceDate.toISOString() : undefined;\r\n data[\"url\"] = this.url;\r\n data[\"status\"] = this.status;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IBillogram {\r\n id?: string | undefined;\r\n totalSum?: number;\r\n remainingSum?: number;\r\n invoiceDate?: moment.Moment;\r\n url?: string | undefined;\r\n status?: BillogramStatus;\r\n}\r\n\r\nexport enum DevicePlatform {\r\n IOS = \"IOS\",\r\n ANDROID = \"ANDROID\",\r\n}\r\n\r\nexport class Device implements IDevice {\r\n id?: string | undefined;\r\n platform?: DevicePlatform;\r\n token?: string | undefined;\r\n\r\n constructor(data?: IDevice) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.platform = _data[\"platform\"];\r\n this.token = _data[\"token\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): Device {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new Device();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"platform\"] = this.platform;\r\n data[\"token\"] = this.token;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IDevice {\r\n id?: string | undefined;\r\n platform?: DevicePlatform;\r\n token?: string | undefined;\r\n}\r\n\r\nexport class NotificationRequest implements INotificationRequest {\r\n text?: string | undefined;\r\n title?: string | undefined;\r\n action?: string | undefined;\r\n silent?: boolean;\r\n tag?: string | undefined;\r\n data?: { [key: string]: string; } | undefined;\r\n\r\n constructor(data?: INotificationRequest) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.text = _data[\"text\"];\r\n this.title = _data[\"title\"];\r\n this.action = _data[\"action\"];\r\n this.silent = _data[\"silent\"];\r\n this.tag = _data[\"tag\"];\r\n if (_data[\"data\"]) {\r\n this.data = {} as any;\r\n for (let key in _data[\"data\"]) {\r\n if (_data[\"data\"].hasOwnProperty(key))\r\n (this.data)![key] = _data[\"data\"][key];\r\n }\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): NotificationRequest {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new NotificationRequest();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"text\"] = this.text;\r\n data[\"title\"] = this.title;\r\n data[\"action\"] = this.action;\r\n data[\"silent\"] = this.silent;\r\n data[\"tag\"] = this.tag;\r\n if (this.data) {\r\n data[\"data\"] = {};\r\n for (let key in this.data) {\r\n if (this.data.hasOwnProperty(key))\r\n (data[\"data\"])[key] = this.data[key];\r\n }\r\n }\r\n return data;\r\n }\r\n}\r\n\r\nexport interface INotificationRequest {\r\n text?: string | undefined;\r\n title?: string | undefined;\r\n action?: string | undefined;\r\n silent?: boolean;\r\n tag?: string | undefined;\r\n data?: { [key: string]: string; } | undefined;\r\n}\r\n\r\nexport class RegistrationDescription implements IRegistrationDescription {\r\n eTag?: string | undefined;\r\n expirationTime?: moment.Moment | undefined;\r\n registrationId?: string | undefined;\r\n tags?: string | undefined;\r\n pushVariables?: string | undefined;\r\n\r\n constructor(data?: IRegistrationDescription) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.eTag = _data[\"ETag\"];\r\n this.expirationTime = _data[\"ExpirationTime\"] ? moment(_data[\"ExpirationTime\"].toString()) : undefined;\r\n this.registrationId = _data[\"RegistrationId\"];\r\n this.tags = _data[\"Tags\"];\r\n this.pushVariables = _data[\"PushVariables\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): RegistrationDescription {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new RegistrationDescription();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"ETag\"] = this.eTag;\r\n data[\"ExpirationTime\"] = this.expirationTime ? this.expirationTime.toISOString() : undefined;\r\n data[\"RegistrationId\"] = this.registrationId;\r\n data[\"Tags\"] = this.tags;\r\n data[\"PushVariables\"] = this.pushVariables;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IRegistrationDescription {\r\n eTag?: string | undefined;\r\n expirationTime?: moment.Moment | undefined;\r\n registrationId?: string | undefined;\r\n tags?: string | undefined;\r\n pushVariables?: string | undefined;\r\n}\r\n\r\nexport class VitecOrderTicket implements IVitecOrderTicket {\r\n orderId?: string | undefined;\r\n userId?: string | undefined;\r\n orderUserId?: string | undefined;\r\n targetId?: string | undefined;\r\n targetType?: string | undefined;\r\n tenantId?: string | undefined;\r\n chainId?: string | undefined;\r\n customerId?: string | undefined;\r\n hasExpired?: boolean;\r\n\r\n constructor(data?: IVitecOrderTicket) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.orderId = _data[\"orderId\"];\r\n this.userId = _data[\"userId\"];\r\n this.orderUserId = _data[\"orderUserId\"];\r\n this.targetId = _data[\"targetId\"];\r\n this.targetType = _data[\"targetType\"];\r\n this.tenantId = _data[\"tenantId\"];\r\n this.chainId = _data[\"chainId\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.hasExpired = _data[\"hasExpired\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): VitecOrderTicket {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VitecOrderTicket();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"orderId\"] = this.orderId;\r\n data[\"userId\"] = this.userId;\r\n data[\"orderUserId\"] = this.orderUserId;\r\n data[\"targetId\"] = this.targetId;\r\n data[\"targetType\"] = this.targetType;\r\n data[\"tenantId\"] = this.tenantId;\r\n data[\"chainId\"] = this.chainId;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"hasExpired\"] = this.hasExpired;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IVitecOrderTicket {\r\n orderId?: string | undefined;\r\n userId?: string | undefined;\r\n orderUserId?: string | undefined;\r\n targetId?: string | undefined;\r\n targetType?: string | undefined;\r\n tenantId?: string | undefined;\r\n chainId?: string | undefined;\r\n customerId?: string | undefined;\r\n hasExpired?: boolean;\r\n}\r\n\r\nexport class VitecUserDbModel implements IVitecUserDbModel {\r\n id?: string;\r\n userId?: string | undefined;\r\n name?: string | undefined;\r\n title?: string | undefined;\r\n email?: string | undefined;\r\n mobile?: string | undefined;\r\n chainId?: string;\r\n chain?: RealEstateChainModel;\r\n\r\n constructor(data?: IVitecUserDbModel) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.id = _data[\"id\"];\r\n this.userId = _data[\"userId\"];\r\n this.name = _data[\"name\"];\r\n this.title = _data[\"title\"];\r\n this.email = _data[\"email\"];\r\n this.mobile = _data[\"mobile\"];\r\n this.chainId = _data[\"chainId\"];\r\n this.chain = _data[\"chain\"] ? RealEstateChainModel.fromJS(_data[\"chain\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): VitecUserDbModel {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VitecUserDbModel();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"id\"] = this.id;\r\n data[\"userId\"] = this.userId;\r\n data[\"name\"] = this.name;\r\n data[\"title\"] = this.title;\r\n data[\"email\"] = this.email;\r\n data[\"mobile\"] = this.mobile;\r\n data[\"chainId\"] = this.chainId;\r\n data[\"chain\"] = this.chain ? this.chain.toJSON() : undefined;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IVitecUserDbModel {\r\n id?: string;\r\n userId?: string | undefined;\r\n name?: string | undefined;\r\n title?: string | undefined;\r\n email?: string | undefined;\r\n mobile?: string | undefined;\r\n chainId?: string;\r\n chain?: RealEstateChainModel;\r\n}\r\n\r\nexport class VitecOrder implements IVitecOrder {\r\n token?: string | undefined;\r\n customerId?: string | undefined;\r\n ticket?: VitecOrderTicket;\r\n vitecUserId?: string | undefined;\r\n vitecUser?: VitecUserDbModel;\r\n vitecResponsibleUserId?: string | undefined;\r\n vitecResponsibleUser?: VitecUserDbModel;\r\n vitecFileIds?: string[] | undefined;\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n updatedOn?: moment.Moment;\r\n status?: RealEstateOrderStatus;\r\n addOns?: AddOn[] | undefined;\r\n contractMethod?: RealEstateOrderContractMethod;\r\n comment?: string | undefined;\r\n realEstateObjectId?: string | undefined;\r\n realEstateObject?: RealEstateObjectDbModel;\r\n easyFileIds?: string[] | undefined;\r\n easyCaseId?: string | undefined;\r\n rebelOrderId?: number | undefined;\r\n readonly auditEntityId?: string | undefined;\r\n\r\n constructor(data?: IVitecOrder) {\r\n if (data) {\r\n for (var property in data) {\r\n if (data.hasOwnProperty(property))\r\n (this)[property] = (data)[property];\r\n }\r\n }\r\n }\r\n\r\n init(_data?: any) {\r\n if (_data) {\r\n this.token = _data[\"token\"];\r\n this.customerId = _data[\"customerId\"];\r\n this.ticket = _data[\"ticket\"] ? VitecOrderTicket.fromJS(_data[\"ticket\"]) : undefined;\r\n this.vitecUserId = _data[\"vitecUserId\"];\r\n this.vitecUser = _data[\"vitecUser\"] ? VitecUserDbModel.fromJS(_data[\"vitecUser\"]) : undefined;\r\n this.vitecResponsibleUserId = _data[\"vitecResponsibleUserId\"];\r\n this.vitecResponsibleUser = _data[\"vitecResponsibleUser\"] ? VitecUserDbModel.fromJS(_data[\"vitecResponsibleUser\"]) : undefined;\r\n if (Array.isArray(_data[\"vitecFileIds\"])) {\r\n this.vitecFileIds = [] as any;\r\n for (let item of _data[\"vitecFileIds\"])\r\n this.vitecFileIds!.push(item);\r\n }\r\n this.id = _data[\"id\"];\r\n this.createdOn = _data[\"createdOn\"] ? moment(_data[\"createdOn\"].toString()) : undefined;\r\n this.updatedOn = _data[\"updatedOn\"] ? moment(_data[\"updatedOn\"].toString()) : undefined;\r\n this.status = _data[\"status\"];\r\n if (Array.isArray(_data[\"addOns\"])) {\r\n this.addOns = [] as any;\r\n for (let item of _data[\"addOns\"])\r\n this.addOns!.push(item);\r\n }\r\n this.contractMethod = _data[\"contractMethod\"];\r\n this.comment = _data[\"comment\"];\r\n this.realEstateObjectId = _data[\"realEstateObjectId\"];\r\n this.realEstateObject = _data[\"realEstateObject\"] ? RealEstateObjectDbModel.fromJS(_data[\"realEstateObject\"]) : undefined;\r\n if (Array.isArray(_data[\"easyFileIds\"])) {\r\n this.easyFileIds = [] as any;\r\n for (let item of _data[\"easyFileIds\"])\r\n this.easyFileIds!.push(item);\r\n }\r\n this.easyCaseId = _data[\"easyCaseId\"];\r\n this.rebelOrderId = _data[\"rebelOrderId\"];\r\n (this).auditEntityId = _data[\"auditEntityId\"];\r\n }\r\n }\r\n\r\n static fromJS(data: any): VitecOrder {\r\n data = typeof data === 'object' ? data : {};\r\n let result = new VitecOrder();\r\n result.init(data);\r\n return result;\r\n }\r\n\r\n toJSON(data?: any) {\r\n data = typeof data === 'object' ? data : {};\r\n data[\"token\"] = this.token;\r\n data[\"customerId\"] = this.customerId;\r\n data[\"ticket\"] = this.ticket ? this.ticket.toJSON() : undefined;\r\n data[\"vitecUserId\"] = this.vitecUserId;\r\n data[\"vitecUser\"] = this.vitecUser ? this.vitecUser.toJSON() : undefined;\r\n data[\"vitecResponsibleUserId\"] = this.vitecResponsibleUserId;\r\n data[\"vitecResponsibleUser\"] = this.vitecResponsibleUser ? this.vitecResponsibleUser.toJSON() : undefined;\r\n if (Array.isArray(this.vitecFileIds)) {\r\n data[\"vitecFileIds\"] = [];\r\n for (let item of this.vitecFileIds)\r\n data[\"vitecFileIds\"].push(item);\r\n }\r\n data[\"id\"] = this.id;\r\n data[\"createdOn\"] = this.createdOn ? this.createdOn.toISOString() : undefined;\r\n data[\"updatedOn\"] = this.updatedOn ? this.updatedOn.toISOString() : undefined;\r\n data[\"status\"] = this.status;\r\n if (Array.isArray(this.addOns)) {\r\n data[\"addOns\"] = [];\r\n for (let item of this.addOns)\r\n data[\"addOns\"].push(item);\r\n }\r\n data[\"contractMethod\"] = this.contractMethod;\r\n data[\"comment\"] = this.comment;\r\n data[\"realEstateObjectId\"] = this.realEstateObjectId;\r\n data[\"realEstateObject\"] = this.realEstateObject ? this.realEstateObject.toJSON() : undefined;\r\n if (Array.isArray(this.easyFileIds)) {\r\n data[\"easyFileIds\"] = [];\r\n for (let item of this.easyFileIds)\r\n data[\"easyFileIds\"].push(item);\r\n }\r\n data[\"easyCaseId\"] = this.easyCaseId;\r\n data[\"rebelOrderId\"] = this.rebelOrderId;\r\n data[\"auditEntityId\"] = this.auditEntityId;\r\n return data;\r\n }\r\n}\r\n\r\nexport interface IVitecOrder {\r\n token?: string | undefined;\r\n customerId?: string | undefined;\r\n ticket?: VitecOrderTicket;\r\n vitecUserId?: string | undefined;\r\n vitecUser?: VitecUserDbModel;\r\n vitecResponsibleUserId?: string | undefined;\r\n vitecResponsibleUser?: VitecUserDbModel;\r\n vitecFileIds?: string[] | undefined;\r\n id?: string;\r\n createdOn?: moment.Moment;\r\n updatedOn?: moment.Moment;\r\n status?: RealEstateOrderStatus;\r\n addOns?: AddOn[] | undefined;\r\n contractMethod?: RealEstateOrderContractMethod;\r\n comment?: string | undefined;\r\n realEstateObjectId?: string | undefined;\r\n realEstateObject?: RealEstateObjectDbModel;\r\n easyFileIds?: string[] | undefined;\r\n easyCaseId?: string | undefined;\r\n rebelOrderId?: number | undefined;\r\n auditEntityId?: string | undefined;\r\n}\r\n\r\nexport interface FileParameter {\r\n data: any;\r\n fileName: string;\r\n}\r\n\r\nexport interface FileResponse {\r\n data: Blob;\r\n status: number;\r\n fileName?: string;\r\n headers?: { [name: string]: any };\r\n}\r\n\r\nexport class ApiException extends Error {\r\n message: string;\r\n status: number;\r\n response: string;\r\n headers: { [key: string]: any; };\r\n result: any;\r\n\r\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\r\n super();\r\n\r\n this.message = message;\r\n this.status = status;\r\n this.response = response;\r\n this.headers = headers;\r\n this.result = result;\r\n }\r\n\r\n protected isApiException = true;\r\n\r\n static isApiException(obj: any): obj is ApiException {\r\n return obj.isApiException === true;\r\n }\r\n}\r\n\r\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new ApiException(message, status, response, headers, null);\r\n}\r\n\r\ndeclare var ClientConfig: Config;","import * as React from \"react\";\r\nimport { withFormsy, IFormsyDecorator } from \"formsy-react\";\r\n\r\ninterface Props extends IFormsyDecorator {\r\n label: string;\r\n labelBold?: string;\r\n position: \"top\" | \"left\";\r\n}\r\n\r\nclass Checkbox extends React.Component {\r\n render() {\r\n return (\r\n
\r\n \r\n \r\n \r\n {this.props.labelBold && {this.props.labelBold}}\r\n {this.props.label}\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n labelClick = () => {\r\n this.props.setValue(!this.props.getValue());\r\n };\r\n\r\n handleChange = (event: React.ChangeEvent) => {\r\n this.props.setValue(event.currentTarget.checked);\r\n };\r\n}\r\n\r\nexport default withFormsy(Checkbox);\r\n","import { IFormsyDecorator, withFormsy } from \"formsy-react\";\r\nimport * as React from \"react\";\r\n\r\ninterface Props extends IFormsyDecorator {\r\n placeholder?: string;\r\n type?: string;\r\n name: string;\r\n disabled?: boolean;\r\n onValidInput?(value: string): void;\r\n adjustValue?(value: string): string;\r\n multiline?: boolean;\r\n rows?: number;\r\n skipFirstInput: boolean;\r\n min?: string | number;\r\n max?: string | number;\r\n onChange?: (value: string) => void;\r\n}\r\n\r\ninterface State {\r\n firstInput: boolean;\r\n}\r\n\r\nclass Input extends React.Component {\r\n public static defaultProps: Partial = {\r\n type: \"text\",\r\n multiline: false,\r\n };\r\n state = {\r\n firstInput: true,\r\n };\r\n\r\n render() {\r\n const errorMessage =\r\n this.state.firstInput && this.props.skipFirstInput != true\r\n ? \"\"\r\n : this.props.getErrorMessage();\r\n const element = this.props.multiline ? (\r\n \r\n ) : (\r\n \r\n );\r\n return (\r\n \r\n {element}\r\n \r\n {errorMessage}\r\n \r\n \r\n );\r\n }\r\n\r\n handleChange = (\r\n event: React.ChangeEvent\r\n ) => {\r\n let value = event.currentTarget.value;\r\n if (this.props.adjustValue) {\r\n value = this.props.adjustValue(value);\r\n }\r\n this.props.setValue(value);\r\n this.props.onChange?.(value);\r\n if (this.props.onValidInput && this.props.isValidValue(value)) {\r\n this.props.onValidInput(value);\r\n }\r\n };\r\n\r\n public validate = () => {\r\n this.setState({ firstInput: false });\r\n };\r\n\r\n onBlur = () => {\r\n if (this.props.getValue()) {\r\n this.setState({ firstInput: false });\r\n }\r\n };\r\n}\r\n\r\nexport default withFormsy(Input);\r\n","import { IFormsyDecorator } from \"formsy-react\";\r\nimport * as React from \"react\";\r\nimport Input from \"./Input\";\r\n\r\ninterface Props extends IFormsyDecorator {\r\n placeholder?: string;\r\n innerRef: React.Ref;\r\n skipFirstInput: boolean;\r\n onValidInput?(value: string): void;\r\n min?: string | number;\r\n onChange?: (date: string) => void;\r\n}\r\n\r\nclass DateInput extends React.Component {\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default React.forwardRef((props: Props, ref) => (\r\n \r\n));\r\n","import * as React from \"react\";\r\nimport Input from \"./Input\";\r\nimport { addValidationRule } from \"formsy-react\";\r\n\r\ninterface Props {\r\n value: string;\r\n name: string;\r\n onValidPid?(pid: string): void;\r\n disabled?: boolean;\r\n required?: boolean;\r\n}\r\n\r\naddValidationRule(\"isEan\", (values: any, value: string) => {\r\n if (!value) {\r\n return true;\r\n }\r\n if (!/^735999\\d{12}$/.test(value)) {\r\n return false;\r\n }\r\n let checksum = 0;\r\n for (let i = 0; i < 17; i++) {\r\n const number = parseInt(value[i]);\r\n checksum += i % 2 ? number : number * 3;\r\n }\r\n\r\n checksum %= 10;\r\n checksum = checksum === 0 ? 0 : 10 - checksum;\r\n\r\n return parseInt(value[17]) == checksum;\r\n});\r\n\r\nexport class EanInput extends React.Component {\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import * as React from \"react\";\r\nimport Input from \"./Input\";\r\n\r\ninterface Props {\r\n value: string;\r\n name: string;\r\n innerRef?: React.Ref;\r\n skipFirstInput: boolean;\r\n validate: boolean;\r\n}\r\n\r\nclass EmailInput extends React.Component {\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default React.forwardRef((props: Props, ref) => (\r\n \r\n));\r\n","import * as React from \"react\";\r\nimport { withFormsy, IFormsyDecorator } from \"formsy-react\";\r\n\r\nexport interface Item {\r\n label: string;\r\n value: string;\r\n}\r\n\r\nexport interface ButtonProps {\r\n button: Item;\r\n onClick(button: Item): void;\r\n active: boolean;\r\n name: string;\r\n}\r\n\r\nexport class RadioButton extends React.PureComponent {\r\n render() {\r\n return (\r\n \r\n {this.props.button.label}\r\n \r\n );\r\n }\r\n\r\n onClick = (e: React.MouseEvent) => {\r\n this.props.onClick(this.props.button);\r\n };\r\n}\r\n\r\ninterface Props extends IFormsyDecorator {\r\n name: string;\r\n buttons: Item[];\r\n onChange?(button: Item): void;\r\n}\r\n\r\nclass ButtonGroup extends React.PureComponent {\r\n render() {\r\n return (\r\n
\r\n {this.props.buttons.map((button) => {\r\n return (\r\n \r\n );\r\n })}\r\n
\r\n );\r\n }\r\n\r\n onClick = (button: Item) => {\r\n this.props.setValue(button.value);\r\n this.props.onChange && this.props.onChange(button);\r\n };\r\n}\r\n\r\nexport default withFormsy(ButtonGroup);\r\n","import * as React from \"react\";\r\nimport { withFormsy, IFormsyDecorator } from \"formsy-react\";\r\nimport { RadioButton } from \"./RadioGroup\";\r\n\r\ninterface Props extends IFormsyDecorator {\r\n name: string;\r\n buttons: Item[];\r\n onChange?(button: Item): void;\r\n}\r\n\r\nclass MultiselectGroup extends React.PureComponent {\r\n render() {\r\n return (\r\n
\r\n {this.props.buttons.map((button) => {\r\n return (\r\n \r\n );\r\n })}\r\n
\r\n );\r\n }\r\n\r\n isSelected = (value: string) => {\r\n var values = this.props.getValue()?.split(\",\") ?? [];\r\n return values.findIndex((selectedValue) => selectedValue == value) != -1;\r\n };\r\n\r\n onClick = (button: Item) => {\r\n var values = this.props.getValue()?.split(\",\") ?? [];\r\n if (!this.isSelected(button.value)) {\r\n values.push(button.value);\r\n } else {\r\n values = values.filter((value) => value != button.value);\r\n }\r\n const value = values.join(\",\");\r\n this.props.setValue(value);\r\n this.props.onChange && this.props.onChange(value);\r\n };\r\n}\r\n\r\nexport default withFormsy(MultiselectGroup);\r\n","import * as React from \"react\";\r\nimport Input from \"./Input\";\r\n\r\ninterface Props {\r\n value: string;\r\n name: string;\r\n innerRef?: React.Ref;\r\n skipFirstInput: boolean;\r\n validate: boolean;\r\n}\r\n\r\nclass PhoneInput extends React.Component {\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n\r\n adjustPhone = (phone: string): string => {\r\n // replace +46 with 0\r\n phone = phone.replace(/^(\\+)?46/, \"0\");\r\n // replace all non digits exept for leading +\r\n phone = phone.replace(/(^\\+)|[^0-9]/g, \"$1\");\r\n // add leading 0 if nine digits not starting with 0\r\n if (\r\n phone &&\r\n phone.length == 9 &&\r\n !phone.startsWith(\"0\") &&\r\n !phone.startsWith(\"+\")\r\n ) {\r\n return \"0\" + phone;\r\n }\r\n\r\n return phone;\r\n };\r\n}\r\n\r\nexport default React.forwardRef((props: Props, ref) => (\r\n \r\n));\r\n","import * as React from \"react\";\r\nimport Input from \"./Input\";\r\nimport { CustomerType } from \"../api/ApiClient\";\r\n\r\ninterface Props {\r\n value: string;\r\n name: string;\r\n onValidPid?(pid: string): void;\r\n disabled?: boolean;\r\n innerRef?: React.Ref;\r\n skipFirstInput: boolean;\r\n customerType?: CustomerType;\r\n required: boolean;\r\n}\r\n\r\nexport class PidInput extends React.Component {\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n\r\n adjustPid = (pid: string): string => {\r\n pid = pid.replace(/[^\\d]/g, \"\");\r\n if (this.props.customerType != CustomerType.Business) {\r\n if (\r\n pid &&\r\n pid.length == 10 &&\r\n !pid.startsWith(\"19\") &&\r\n !pid.startsWith(\"20\")\r\n ) {\r\n return (parseInt(pid.substring(0, 2)) <= 5 ? \"20\" : \"19\") + pid;\r\n }\r\n return pid.length > 12 ? pid.substring(0, 12) : pid;\r\n } else {\r\n return pid.length > 10 ? pid.substring(0, 10) : pid;\r\n }\r\n };\r\n}\r\n\r\nexport default React.forwardRef((props: Props, ref) => (\r\n \r\n));\r\n","import * as React from \"react\";\r\n\r\ninterface Props {\r\n width?: number;\r\n height?: number;\r\n}\r\n\r\nclass Spinner extends React.PureComponent {\r\n render() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default Spinner;\r\n","export function parseQueryString(input: string): Map {\r\n let result = new Map();\r\n\r\n if (typeof input !== \"string\") {\r\n return result;\r\n }\r\n\r\n input = input.trim().replace(/^[?#&]/, \"\");\r\n\r\n for (const param of input.split(\"&\")) {\r\n let [key, value] = param.split(\"=\");\r\n\r\n if (key) {\r\n value = value === undefined ? null : decodeURIComponent(value);\r\n result.set(decodeURIComponent(key), value);\r\n }\r\n }\r\n\r\n return result;\r\n}\r\n","export enum FetchStatus {\r\n FETCHING,\r\n IDLE,\r\n ERROR,\r\n DONE\r\n}\r\n\r\n","import * as React from \"react\";\r\nimport { Modal } from \"react-bootstrap\";\r\nimport { isIOS, isMobile } from \"react-device-detect\";\r\nimport {\r\n AuthenticationClient,\r\n CollectStatus,\r\n Order,\r\n SignInitiateRequest,\r\n} from \"../api/ApiClient\";\r\nimport { parseQueryString } from \"../services/QueryString\";\r\nimport { FetchStatus } from \"../utils/FetchStatus\";\r\nimport { Status } from \"./SignupForm\";\r\n\r\ninterface Props {\r\n onConfirm(signatureId?: string): void;\r\n onClose(): void;\r\n status: Status;\r\n show: boolean;\r\n requireSignature: boolean;\r\n postingTitle?: string;\r\n}\r\n\r\ninterface State {\r\n show: boolean;\r\n order?: Order;\r\n submitting: boolean;\r\n signatureStatus: FetchStatus;\r\n message: string;\r\n link?: string;\r\n autoLaunch: boolean;\r\n orderRef: string;\r\n qrCodeBase64?: string;\r\n qrState?: string;\r\n collectStatus?: CollectStatus;\r\n}\r\n\r\nexport default class ConfirmModal extends React.PureComponent {\r\n private readonly orderRefSessionStorageKey = \"rebel.orderRefSignaturebankid.\";\r\n\r\n state = {\r\n show: false,\r\n submitting: false,\r\n message: \"\",\r\n signatureStatus: !!sessionStorage.getItem(this.orderRefSessionStorageKey)\r\n ? FetchStatus.FETCHING\r\n : FetchStatus.IDLE,\r\n autoLaunch: isMobile,\r\n } as State;\r\n\r\n private readonly authenticationClient: AuthenticationClient =\r\n new AuthenticationClient();\r\n\r\n private posting = false;\r\n private errorCount = 0;\r\n\r\n componentDidMount() {\r\n let params = parseQueryString(window.location.search);\r\n\r\n let orderRef =\r\n (params && params.get(\"orderRef\")) ||\r\n sessionStorage.getItem(this.orderRefSessionStorageKey);\r\n\r\n if (orderRef) {\r\n console.debug(\"Found orderRef on mount\", orderRef);\r\n this.posting = true;\r\n this.setState({ signatureStatus: FetchStatus.FETCHING, orderRef });\r\n this.checkStatus(orderRef);\r\n sessionStorage.removeItem(this.orderRefSessionStorageKey);\r\n }\r\n }\r\n\r\n render() {\r\n let title: string;\r\n let body: React.ReactNode;\r\n let footer: React.ReactNode;\r\n\r\n switch (this.props.status) {\r\n case Status.CONFIRM: {\r\n if (\r\n !this.props.requireSignature ||\r\n this.state.signatureStatus == FetchStatus.IDLE\r\n ) {\r\n title = \"Stämmer era kontaktuppgifter?\";\r\n body = (\r\n <>\r\n
\r\n \r\n
\r\n {this.state.order?.phone || \"Inget mobilnummer\"}\r\n
\r\n
\r\n
\r\n \r\n
\r\n {this.state.order?.email || \"Ingen epostadress\"}\r\n
\r\n
\r\n \r\n );\r\n footer = this.props.requireSignature ? (\r\n <>\r\n {this.state.signatureStatus == FetchStatus.IDLE ? (\r\n <>\r\n this.initiateSignature(this.state.order)}>\r\n Signera med BankId{\" \"}\r\n \r\n \r\n
\r\n \r\n Ändra\r\n \r\n \r\n ) : (\r\n <>\r\n

{this.state.message}

\r\n \r\n )}\r\n \r\n ) : (\r\n <>\r\n \r\n Allt ser ok ut\r\n \r\n
\r\n \r\n Ändra\r\n \r\n \r\n );\r\n } else {\r\n if (this.state.signatureStatus == FetchStatus.ERROR) {\r\n title = \"Signatur från BankID misslyckades\";\r\n body = (\r\n
\r\n

{this.state.message}

\r\n
\r\n );\r\n footer = (\r\n <>\r\n this.initiateSignature(this.state.order)}>\r\n Försök igen \r\n \r\n
\r\n \r\n Avbryt\r\n \r\n \r\n );\r\n } else {\r\n title = \"Väntar på signatur från BankID\";\r\n body = (\r\n
\r\n {this.state.qrCodeBase64 ? (\r\n \r\n ) : (\r\n <>\r\n
\r\n {this.state.link && (\r\n <>\r\n \r\n Öppna BankID\r\n \r\n \r\n )}\r\n \r\n )}\r\n

{this.state.message}

\r\n
\r\n );\r\n footer = null;\r\n }\r\n }\r\n\r\n break;\r\n }\r\n case Status.POSTING: {\r\n title = this.props.postingTitle ?? \"Beställer ren, enkel och billig el\";\r\n body = (\r\n
\r\n
\r\n
\r\n );\r\n footer = null;\r\n break;\r\n }\r\n case Status.DONE: {\r\n title = \"Din beställning är nu klar\";\r\n body =
Nu kommer allt det roliga...
;\r\n footer = null;\r\n break;\r\n }\r\n case Status.ERROR: {\r\n title = \"Något gick fel\";\r\n body =
Något oväntat har hänt...
;\r\n footer = (\r\n <>\r\n \r\n Försök igen\r\n \r\n
\r\n \r\n Ångra\r\n \r\n \r\n );\r\n break;\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n

{title}

\r\n {body}\r\n {footer}\r\n
\r\n
\r\n );\r\n }\r\n\r\n handleClose = () => {\r\n this.props.onClose();\r\n };\r\n\r\n show = (order: Order) => {\r\n this.setState({ order });\r\n };\r\n\r\n initiate = (order: Order) => {\r\n this.setState({ order });\r\n this.initiateSignature(order);\r\n };\r\n\r\n handleConfirm = () => {\r\n this.props.onConfirm();\r\n };\r\n\r\n initiateSignature = async (order: Order) => {\r\n console.debug(\"Initiate signature for order\", order, this.state.order);\r\n\r\n if (this.posting) {\r\n return;\r\n }\r\n this.posting = true;\r\n this.errorCount = 0;\r\n this.setState({\r\n signatureStatus: FetchStatus.FETCHING,\r\n link: null,\r\n message: null,\r\n });\r\n\r\n try {\r\n let response = await this.authenticationClient.initiateSignature(\r\n SignInitiateRequest.fromJS({\r\n order,\r\n })\r\n );\r\n\r\n if (this.state.autoLaunch) {\r\n let link =\r\n (isIOS ? \"https://app.bankid.com/\" : \"bankid:///\") +\r\n \"?autostarttoken=\" +\r\n response.autoStartToken +\r\n \"&redirect=null\";\r\n\r\n if (isIOS) {\r\n sessionStorage.setItem(\r\n this.orderRefSessionStorageKey,\r\n response.orderRef\r\n );\r\n this.setState({ link });\r\n } else {\r\n window.location.href = link;\r\n }\r\n } else {\r\n console.debug(\"Stored qr state\", {\r\n qrCodeBase64: response.qrCodeBase64Encoded,\r\n qrState: response.state,\r\n });\r\n this.setState({\r\n qrCodeBase64: response.qrCodeBase64Encoded,\r\n qrState: response.state,\r\n message: \"Starta BankID-appen\",\r\n });\r\n }\r\n\r\n setTimeout(() => {\r\n this.checkStatus(response.orderRef);\r\n }, 500);\r\n\r\n console.debug(\"Signature initiated\", response);\r\n } catch (error) {\r\n this.posting = false;\r\n console.error(\"Signature failed\", error);\r\n this.setState({ signatureStatus: FetchStatus.ERROR });\r\n }\r\n };\r\n\r\n checkStatus = async (orderRef: string) => {\r\n console.debug(\"Checking signature status\");\r\n try {\r\n let response = await this.authenticationClient.status(\r\n orderRef,\r\n this.state.autoLaunch ? \"\" : this.state.qrState\r\n );\r\n console.debug(\"Got signature status\", response);\r\n\r\n switch (response.status) {\r\n case CollectStatus.Pending: {\r\n this.setState({\r\n message: response.message,\r\n qrCodeBase64: response.qrCodeBase64Encoded,\r\n });\r\n setTimeout(() => {\r\n this.checkStatus(orderRef);\r\n }, 2000);\r\n break;\r\n }\r\n case CollectStatus.Failed: {\r\n this.posting = false;\r\n this.setState({\r\n message: response.message,\r\n signatureStatus: FetchStatus.ERROR,\r\n qrCodeBase64: null,\r\n link: null,\r\n });\r\n break;\r\n }\r\n case CollectStatus.Complete: {\r\n this.props.onConfirm(response.signatureId);\r\n break;\r\n }\r\n default: {\r\n console.error(\"Signature failed\", response);\r\n this.posting = false;\r\n this.setState({\r\n message:\r\n response.message ||\r\n \"Någonting oväntat hände, var vänlig försök igen.\",\r\n signatureStatus: FetchStatus.ERROR,\r\n qrCodeBase64: null,\r\n link: null,\r\n });\r\n }\r\n }\r\n } catch (error) {\r\n console.error(\"Signature status failed\", error);\r\n\r\n if (this.errorCount > 1) {\r\n sessionStorage.removeItem(this.orderRefSessionStorageKey);\r\n console.error(\"Signature status failed\", error);\r\n this.posting = false;\r\n this.setState({\r\n message: \"Någonting oväntat hände, var vänlig försök igen\",\r\n signatureStatus: FetchStatus.ERROR,\r\n });\r\n } else {\r\n this.errorCount++;\r\n console.debug(\"Got error check status\", error, this.errorCount);\r\n setTimeout(() => {\r\n this.checkStatus(orderRef);\r\n }, 2000);\r\n }\r\n }\r\n };\r\n}\r\n","import * as React from \"react\";\r\nimport { CopyOverride } from \"../api/Config\";\r\ndeclare global {\r\n interface Window {\r\n ClientCopyOverride: CopyOverride;\r\n }\r\n}\r\n\r\nenum Club {\r\n NIF = \"NIF\",\r\n NSK = \"NSK\",\r\n NGF = \"NGF\"\r\n}\r\n\r\ninterface Props {\r\n onChange: (club: string, team: string) => void;\r\n initClub?: string;\r\n initTeam?: string;\r\n}\r\n\r\ninterface State {\r\n club?: Club;\r\n team: string;\r\n}\r\n\r\nexport default class NykvarnClubSelection extends React.Component<\r\n Props,\r\n State\r\n> {\r\n readonly state: State = {\r\n club: Club[this.props.initClub],\r\n team: this.props.initTeam ?? \"\"\r\n };\r\n\r\n render() {\r\n return (\r\n
\r\n \r\n

\r\n Klicka på en förening nedan eller låt det vara så fördelas pengarna\r\n mellan de tre föreningarna.\r\n

\r\n
\r\n \r\n \r\n

Nykvarns IF

\r\n

NIF

\r\n
\r\n \r\n \r\n

Nykvarns Sportklubb

\r\n

NSK

\r\n
\r\n \r\n \r\n

Nykvarns Gymnastikförening

\r\n

NGF

\r\n \r\n \r\n {this.state.club && (\r\n <>\r\n

\r\n Om det är något speciellt lag du vill stödja så kan du skriva in\r\n det här.\r\n

\r\n ) => {\r\n const team = event.target.value;\r\n this.setState({ team });\r\n this.props.onChange(this.state.club, team);\r\n }}\r\n className={\"form-control\"}\r\n />\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n toggleClub = (club: Club) => {\r\n console.debug(\"Toggle team\", club);\r\n if (this.state.club == club) {\r\n this.setState({ club: null });\r\n this.props.onChange(\"\", this.state.team);\r\n } else {\r\n this.setState({ club });\r\n this.props.onChange(club, this.state.team);\r\n }\r\n };\r\n}\r\n","import * as React from \"react\";\r\n\r\nexport default class HowItWorksModal extends React.PureComponent {\r\n render() {\r\n return (\r\n \r\n
\r\n
\r\n
\r\n

\r\n Det kan aldrig gå fel, det här händer när du tryckt på \"skicka\r\n beställning\"\r\n

\r\n
    \r\n
  • Vi mailar dig en bekräftelse.
  • \r\n
  • \r\n Vi hämtar in uppgifter om din anläggning och din förbrukning.\r\n
  • \r\n
  • \r\n Vi kollar när ditt avtal löper ut och när vi kan byta åt dig.\r\n
  • \r\n
  • Vi genomför bytet och meddelar dig när det är klart.
  • \r\n
  • \r\n Du får ett rörligt avtal där du betalar månadsvis för din\r\n förbrukning. Vi hämtar förbrukningen automatiskt.\r\n
  • \r\n
  • \r\n Du får din första elfaktura en månad efter att bytet är klart.\r\n
  • \r\n
  • \r\n Du kan betala t.ex. via Swish, Autogiro eller E-faktura.\r\n
  • \r\n
  • \r\n Du slipper tänka på elavtal mer och kan göra roligare saker.\r\n
  • \r\n
\r\n

Inga bindingstider eller uppsägningstider

\r\n \r\n Tack, då vet jag\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n","import * as React from \"react\";\r\nimport {\r\n PriceResponse,\r\n AveragePrices,\r\n PriceClient,\r\n Channel,\r\n} from \"../api/ApiClient\";\r\nimport Input from \"../components/Input\";\r\n\r\ninterface Props {\r\n price: PriceResponse;\r\n consumption: number;\r\n channel: Channel;\r\n onChangeConsumption(consumption: number): void;\r\n}\r\n\r\ninterface State {\r\n averagePrices?: AveragePrices;\r\n}\r\n\r\nexport default class PriceDescriptionModal extends React.PureComponent<\r\n Props,\r\n State\r\n> {\r\n private priceClient: PriceClient = new PriceClient();\r\n state = {\r\n averagePrices: undefined,\r\n };\r\n\r\n async componentDidMount() {\r\n try {\r\n let averagePrices = await this.priceClient.average(\r\n this.props.consumption,\r\n this.props.channel\r\n );\r\n this.setState({ averagePrices });\r\n } catch (error) {\r\n console.debug(\"Failed to get average prices\", error);\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n
\r\n
\r\n
\r\n

Rörligt avtal

\r\n

\r\n Prisberäkningen är baserad på din årsförbrukning (som vi\r\n uppskattat på din boendeform) och förra månadens inköpspris av\r\n 100% fossilfri el. Detta inklusive elcertifikat(skatt) och\r\n avgifter som vi behöver betala samt vår låga månadsavgift.\r\n Alltihop inklusive moms presenteras som en uppskattad\r\n månadskostnad.\r\n

\r\n

\r\n Krånglig och tråkig info för en vanlig frisk människa. Tur att\r\n vi har en prisgaranti så du lugnt kan återgå till din\r\n favoritserie på Netflix när du är klar.\r\n

\r\n
\r\n \r\n
\r\n \r\n
\r\n kWh\r\n
\r\n
\r\n
\r\n
\r\n {this.props.price && this.props.price.month} kr / månad\r\n
\r\n \r\n Visa jämförelsepriser{\" \"}\r\n \r\n

\r\n
\r\n
\r\n
\r\n

2 000 kWh/år

\r\n
\r\n
\r\n

\r\n {this.state.averagePrices &&\r\n this.state.averagePrices.price2000}{\" \"}\r\n öre/kWh\r\n

\r\n
\r\n
\r\n
\r\n
\r\n

5 000 kWh/år

\r\n
\r\n
\r\n

\r\n {this.state.averagePrices &&\r\n this.state.averagePrices.price5000}{\" \"}\r\n öre/kWh\r\n

\r\n
\r\n
\r\n
\r\n
\r\n

20 000 kWh/år

\r\n
\r\n
\r\n

\r\n {this.state.averagePrices &&\r\n this.state.averagePrices.price20000}{\" \"}\r\n öre/kWh\r\n

\r\n
\r\n
\r\n

\r\n Jämförelsepriserna visar vad en kWh el skulle kostat förra\r\n månaden för tre olika årsförbrukningar av el i elområde 3.\r\n

\r\n
\r\n \r\n Klar\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n\r\n onChangeConsumption = (event: React.ChangeEvent): void => {\r\n this.props.onChangeConsumption(parseInt(event.target.value));\r\n };\r\n}\r\n","import { debounce } from \"lodash\";\r\nimport * as React from \"react\";\r\nimport { Channel, Housing, PriceClient, PriceResponse } from \"../api/ApiClient\";\r\nimport { CopyOverride } from \"../api/Config\";\r\nimport PriceDescriptionModal from \"./PriceDescriptionModal\";\r\ndeclare global {\r\n interface Window {\r\n ClientCopyOverride: CopyOverride;\r\n }\r\n}\r\n\r\ninterface Props {\r\n onChangeConsumption?(consumption: number): void;\r\n initHousing: Housing;\r\n initArea: number;\r\n initConsumption: number;\r\n}\r\n\r\ninterface State {\r\n housing: Housing;\r\n area: number;\r\n consumption: number;\r\n price?: PriceResponse;\r\n calculating: boolean;\r\n showConsumption: boolean;\r\n}\r\n\r\nexport default class PriceCalculator extends React.Component {\r\n private priceClient: PriceClient = new PriceClient();\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.getPrice = debounce(this.getPrice, 200);\r\n\r\n this.state = {\r\n housing: this.props.initHousing || Housing.LAGENHET,\r\n area: this.props.initArea || 60,\r\n consumption: this.props.initConsumption || 1980,\r\n calculating: false,\r\n showConsumption: false,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.getPrice(this.state.consumption);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n this.onChangeHousing(Housing.LAGENHET)}>\r\n
\r\n Lägenhet\r\n
\r\n this.onChangeHousing(Housing.RADHUS)}>\r\n
\r\n Radhus\r\n
\r\n this.onChangeHousing(Housing.VILLA)}>\r\n
\r\n Villa\r\n \r\n \r\n
\r\n \r\n

{window.ClientCopyOverride?.SignupSliderHelp ?? \"Dra i fågeln\"}

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n {this.state.showConsumption && (\r\n
\r\n
\r\n \r\n
\r\n kWh\r\n
\r\n
\r\n
\r\n )}\r\n \r\n ca {this.state.price && this.state.price.month} kr / månad\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n\r\n onChangeHousing = (housing: Housing): void => {\r\n let area =\r\n housing == Housing.LAGENHET ? 60 : housing == Housing.RADHUS ? 90 : 110;\r\n let consumption = this.getConsumption(housing, area);\r\n\r\n this.setState({\r\n housing,\r\n area,\r\n consumption,\r\n });\r\n\r\n this.props.onChangeConsumption &&\r\n this.props.onChangeConsumption(consumption);\r\n this.getPrice(consumption);\r\n };\r\n\r\n onChangeArea = (area: number): void => {\r\n let consumption = this.getConsumption(this.state.housing, area);\r\n\r\n this.setState({\r\n area,\r\n consumption,\r\n });\r\n\r\n this.props.onChangeConsumption &&\r\n this.props.onChangeConsumption(consumption);\r\n this.getPrice(consumption);\r\n };\r\n\r\n updateArea = (event: React.ChangeEvent): void => {\r\n this.onChangeArea(parseInt(event.currentTarget.value));\r\n };\r\n\r\n updateConsumption = (event: React.ChangeEvent): void => {\r\n this.onChangeConsumption(parseInt(event.target.value));\r\n };\r\n\r\n onChangeConsumption = (consumption: number): void => {\r\n this.setState({\r\n consumption,\r\n showConsumption: true,\r\n });\r\n\r\n this.props.onChangeConsumption &&\r\n this.props.onChangeConsumption(consumption);\r\n this.getPrice(consumption);\r\n };\r\n\r\n getConsumption = (housing: Housing, area: number): number => {\r\n let startConsumption =\r\n housing == Housing.VILLA ? 6000 : housing == Housing.RADHUS ? 3000 : 0;\r\n let multiple = housing == Housing.VILLA ? 64 : 33;\r\n return startConsumption + multiple * area;\r\n };\r\n\r\n getPrice = async (consumption: number): Promise => {\r\n this.setState({ calculating: true });\r\n try {\r\n let price = await this.priceClient.calculate(\r\n consumption,\r\n (window as any).channel\r\n );\r\n this.setState({ price, calculating: false });\r\n } catch (error) {\r\n console.error(\"Failed to calculate price\", error);\r\n this.setState({ price: null, calculating: false });\r\n }\r\n };\r\n\r\n getState = (): State => {\r\n return this.state;\r\n };\r\n\r\n setArea = (area: number) => {\r\n this.onChangeArea(area);\r\n };\r\n}\r\n","import { default as moment } from \"moment\";\r\nimport * as React from \"react\";\r\nimport {\r\n Channel,\r\n Housing,\r\n NegotiatePeriod,\r\n Offer,\r\n PriceClient,\r\n Savings,\r\n SpotPrice,\r\n} from \"../api/ApiClient\";\r\n\r\ninterface Props {\r\n savings: Savings;\r\n offer: Offer;\r\n consumption: number;\r\n}\r\n\r\ninterface State {\r\n spotprice?: SpotPrice;\r\n}\r\n\r\nexport default class SavingsDescriptionModal extends React.PureComponent<\r\n Props,\r\n State\r\n> {\r\n state = { spotprice: null };\r\n private priceClient: PriceClient = new PriceClient();\r\n\r\n async componentDidMount() {\r\n try {\r\n let spotprices = await this.priceClient.list(\r\n 0,\r\n this.props.offer.salesChannel\r\n );\r\n\r\n this.setState({\r\n spotprice:\r\n spotprices?.length > 0\r\n ? spotprices.sort((p1, p2) =>\r\n p1.fromDate > p2.fromDate ? 1 : 0\r\n )[0]\r\n : null,\r\n });\r\n } catch (error) {\r\n console.debug(\"Failed to get spot prices\", error);\r\n }\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n
\r\n
\r\n
\r\n

Besparing med Ren Enklel Billig El

\r\n

\r\n Din beräknade besparing är baserad på en uppskattad\r\n årsförbrukning utifrån de uppgifter du angav\r\n {this.props.offer.salesChannel == Channel.SODERBERG_PARTNERS\r\n ? \" under rådgivningen\"\r\n : \"\"}\r\n . Vidare så har vi jämfört vårt elpris med ett snittpris bland\r\n de största elhandelsbolagen på marknaden.\r\n

\r\n

Dina uppgifter

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Typ av boende\r\n {this.props.offer.housing == Housing.LAGENHET\r\n ? \"Lägenhet\"\r\n : null}\r\n {this.props.offer.housing == Housing.VILLA\r\n ? \"Villa\"\r\n : null}\r\n {this.props.offer.housing == Housing.RADHUS\r\n ? \"Radhus\"\r\n : null}\r\n {this.props.offer.housing == Housing.FRITIDSHUS\r\n ? \"Fritidshus\"\r\n : null}\r\n
Storlek på boende{this.props.offer.area} kvm
Uppskattad förbrukning{this.props.consumption} kWh
Senast tecknat elavtal\r\n {this.props.offer.negotiatePeriod ==\r\n NegotiatePeriod.ONE_YEAR\r\n ? \"1 år sedan\"\r\n : null}\r\n {this.props.offer.negotiatePeriod ==\r\n NegotiatePeriod.THREE_YEARS\r\n ? \"1-3 år sedan\"\r\n : null}\r\n {this.props.offer.negotiatePeriod ==\r\n NegotiatePeriod.FIVE_YEARS\r\n ? \"3-5 år sedan\"\r\n : null}\r\n {this.props.offer.negotiatePeriod ==\r\n NegotiatePeriod.NEVER\r\n ? \"Aldrig\"\r\n : null}\r\n
\r\n
\r\n

\r\n Med Ren Enkel Billig El får du ett rörligt elavtal med en fast\r\n avgift enligt nedan.\r\n

\r\n {this.state.spotprice ? (\r\n <>\r\n

\r\n Vårt rörliga pris i{\" \"}\r\n {moment(this.state.spotprice.fromDate)\r\n .format(\"MMMM\")\r\n .toLowerCase()}\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ElområdeRörliga pris (öre/kWh)
SE1\r\n {(this.state.spotprice.priceSE1 * 100)?.toFixed(2)}\r\n
SE2\r\n {(this.state.spotprice.priceSE2 * 100)?.toFixed(2)}\r\n
SE3\r\n {(this.state.spotprice.priceSE3 * 100)?.toFixed(2)}\r\n
SE4\r\n {(this.state.spotprice.priceSE4 * 100)?.toFixed(2)}\r\n
\r\n
\r\n \r\n ) : null}\r\n

Vår fasta månadsavgift

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n 5000 &&\r\n this.props.consumption <= 10000\r\n ? \"font-weight-bold\"\r\n : \"\"\r\n }>\r\n \r\n \r\n \r\n 10000 &&\r\n this.props.consumption <= 15000\r\n ? \"font-weight-bold\"\r\n : \"\"\r\n }>\r\n \r\n \r\n \r\n 15000 &&\r\n this.props.consumption <= 20000\r\n ? \"font-weight-bold\"\r\n : \"\"\r\n }>\r\n \r\n \r\n \r\n 20000 &&\r\n this.props.consumption <= 25000\r\n ? \"font-weight-bold\"\r\n : \"\"\r\n }>\r\n \r\n \r\n \r\n 25000 &&\r\n this.props.consumption <= 50000\r\n ? \"font-weight-bold\"\r\n : \"\"\r\n }>\r\n \r\n \r\n \r\n \r\n
Förbrukning (kWh/år)Månadsavgift (kr/mån)
0 - 5 00038
5 001 - 10 00048
10 001 - 15 00068
15 001 - 20 00078
20 001 - 25 00088
25 001 - 50 00098
\r\n
\r\n

\r\n Om du vill se mer i detalj hur besparingen skulle se ut för just\r\n dig så kan du maila in din senaste faktura till oss på{\" \"}\r\n \r\n info@renenkelbilligel.se\r\n {\" \"}\r\n så återkommer vi med en exakt jämförelse.\r\n

\r\n \r\n Stäng\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n }\r\n}\r\n","import Formsy from \"formsy-react\";\r\nimport { debounce } from \"lodash\";\r\nimport moment from \"moment\";\r\nimport * as React from \"react\";\r\nimport { ChangeEvent } from \"react\";\r\nimport { Typeahead } from \"react-bootstrap-typeahead\";\r\nimport {\r\n AddressClient,\r\n Channel,\r\n CommunicationType,\r\n Contact,\r\n ContactChannel,\r\n ContactType,\r\n CustomerType,\r\n Housing,\r\n NegotiatePeriod,\r\n ObjectClient,\r\n Offer,\r\n Order,\r\n OrderClient,\r\n PriceResponse,\r\n RealEstateAgentClient,\r\n RealEstateAgentModel,\r\n RealEstateChannel,\r\n RealEstateObject,\r\n RealEstateObjectConsumers,\r\n SoderbergPartnersClient,\r\n} from \"../api/ApiClient\";\r\nimport { CopyOverride } from \"../api/Config\";\r\nimport { Item } from \"../components/ButtonGroup\";\r\nimport Checkbox from \"../components/Checkbox\";\r\nimport DateInput from \"../components/DateInput\";\r\nimport { EanInput } from \"../components/EanInput\";\r\nimport EmailInput from \"../components/EmailInput\";\r\nimport Input from \"../components/Input\";\r\nimport MultiselectGroup from \"../components/MultiselectGroup\";\r\nimport PhoneInput from \"../components/PhoneInput\";\r\nimport { PidInput } from \"../components/PidInput\";\r\nimport RadioGroup from \"../components/RadioGroup\";\r\nimport Spinner from \"../components/Spinner\";\r\nimport { parseQueryString } from \"../services/QueryString\";\r\nimport { FetchStatus } from \"../utils/FetchStatus\";\r\nimport ConfirmModal from \"./ConfirmModal\";\r\nimport HowItWorksModal from \"./HowItWorksModal\";\r\nimport NykvarnTeamSelection from \"./NykvarnClubSelection\";\r\nimport PriceCalculator from \"./PriceCalculator\";\r\nimport SavingsCalculator from \"./SavingsCalculator\";\r\n\r\ninterface Props {}\r\n\r\nexport enum Status {\r\n NOT_FOUND,\r\n NOT_AVAILABLE,\r\n DRAFT,\r\n CONFIRM,\r\n POSTING,\r\n ERROR,\r\n DONE,\r\n}\r\n\r\nenum OrderType {\r\n LEVBYTE,\r\n FLYTT,\r\n}\r\n\r\ninterface State {\r\n valid: boolean;\r\n consumption: number;\r\n price?: PriceResponse;\r\n status: Status;\r\n orderType: OrderType;\r\n hideCompanyHint: boolean;\r\n fetchingAddress: boolean;\r\n showNameInputs: boolean;\r\n fetchAddressNotFound: boolean;\r\n club: string;\r\n team: string;\r\n Agents: RealEstateAgentModel[];\r\n AgentStatus: FetchStatus;\r\n Agent?: RealEstateAgentModel;\r\n fetchingContact: boolean;\r\n fetchingObject: boolean;\r\n fetchObjectNotFound: boolean;\r\n fetchObjectAlreadyCreated: boolean;\r\n buyers?: RealEstateObjectConsumers[];\r\n sellers?: RealEstateObjectConsumers[];\r\n selectedBuyerId: string;\r\n selectedSellerId: string;\r\n skipFirstInput: boolean;\r\n object?: RealEstateObject;\r\n objectStatus?: string;\r\n objectStatusText?: string;\r\n customerType: CustomerType;\r\n sellerCustomerType: CustomerType;\r\n}\r\n\r\ndeclare global {\r\n interface Window {\r\n InitOrder: any;\r\n Offer: any;\r\n ClientCopyOverride: CopyOverride;\r\n }\r\n}\r\n\r\nexport class SignupForm extends React.Component {\r\n private confirmRef: React.RefObject = React.createRef();\r\n private formRef: React.RefObject = React.createRef();\r\n private priceCalculatorRef: React.RefObject =\r\n React.createRef();\r\n private posting: boolean = false;\r\n private addressClient: AddressClient = new AddressClient();\r\n private objectClient = new ObjectClient();\r\n private initialOrder: Order = new Order();\r\n private offer: Offer;\r\n private offerPrice: number;\r\n private offerRebelPrice: number;\r\n private offerCompetitorPrice: number;\r\n\r\n private pidRef: React.RefObject = React.createRef();\r\n private firstNameRef: React.RefObject = React.createRef();\r\n private lastNameRef: React.RefObject = React.createRef();\r\n private streetRef: React.RefObject = React.createRef();\r\n private zipCodeRef: React.RefObject = React.createRef();\r\n private cityRef: React.RefObject = React.createRef();\r\n private mobileRef: React.RefObject = React.createRef();\r\n private emailRef: React.RefObject = React.createRef();\r\n\r\n private currentFirstNameRef: React.RefObject = React.createRef();\r\n private currentLastNameRef: React.RefObject = React.createRef();\r\n private startDateRef: React.RefObject = React.createRef();\r\n\r\n private contactPidRef: React.RefObject = React.createRef();\r\n private contactFirstNameRef: React.RefObject = React.createRef();\r\n private contactLastNameRef: React.RefObject = React.createRef();\r\n private contactPhoneRef: React.RefObject = React.createRef();\r\n private contactEmailRef: React.RefObject = React.createRef();\r\n private salesDateRef: React.RefObject = React.createRef();\r\n private governmentApartmentNumberRef: React.RefObject =\r\n React.createRef();\r\n private apartmentNumberRef: React.RefObject = React.createRef();\r\n private objectIdRef: React.RefObject = React.createRef();\r\n private objectAccessDateRef: React.RefObject = React.createRef();\r\n private initConsumption: number = 1980;\r\n private initArea: number = 60;\r\n private initHousing: Housing = Housing.LAGENHET;\r\n private isWarrant: boolean = false;\r\n private initialObjectId: string = \"\";\r\n private initialAccessDate: string = \"\";\r\n\r\n private AgentRef: React.RefObject> =\r\n React.createRef();\r\n\r\n private controller: AbortController = null;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.parseParams();\r\n this.parseInitOrder();\r\n this.parseOffer();\r\n\r\n this.fetchObject = debounce(this.fetchObject, 500);\r\n this.state = {\r\n consumption: this.initConsumption,\r\n valid: false,\r\n status: Status.DRAFT,\r\n orderType: this.initialOrder.isCurrent\r\n ? OrderType.LEVBYTE\r\n : OrderType.FLYTT,\r\n hideCompanyHint: (window as any).hideCompanyHint,\r\n fetchingAddress: false,\r\n showNameInputs:\r\n this.isWarrant || this.initialOrder.firstName ? true : false,\r\n fetchAddressNotFound: false,\r\n club: this.initialOrder.club ?? \"\",\r\n team: this.initialOrder.team ?? \"\",\r\n Agents: [],\r\n AgentStatus: FetchStatus.FETCHING,\r\n fetchingContact: false,\r\n fetchingObject: false,\r\n fetchObjectNotFound: false,\r\n fetchObjectAlreadyCreated: false,\r\n selectedBuyerId: \"-1\",\r\n selectedSellerId: \"-1\",\r\n skipFirstInput: false,\r\n customerType: CustomerType.Private,\r\n sellerCustomerType: CustomerType.Private,\r\n };\r\n }\r\n\r\n // Init order from warrant\r\n private parseInitOrder(): void {\r\n //this.initialOrder.isCurrent = true;\r\n if (!window || !window.InitOrder) {\r\n return;\r\n }\r\n try {\r\n this.initialOrder = Order.fromJS(JSON.parse(window.InitOrder));\r\n this.initialOrder.area && (this.initArea = this.initialOrder.area);\r\n this.initialOrder.consumption &&\r\n (this.initConsumption = this.initialOrder.consumption);\r\n this.initHousing = this.initialOrder.housing\r\n ? Housing[this.initialOrder.housing]\r\n : Housing.LAGENHET;\r\n this.isWarrant = true;\r\n console.debug(\"Init warrent order\", this.initialOrder);\r\n } catch (error) {\r\n console.error(\"Failed to parse init order\");\r\n }\r\n }\r\n\r\n // Init offer\r\n private parseOffer(): void {\r\n if (!window || !window.Offer) {\r\n return;\r\n }\r\n try {\r\n this.offer = Offer.fromJS(JSON.parse(window.Offer));\r\n\r\n this.offerRebelPrice = Math.round(\r\n (this.offer.consumption * this.offer.variablePriceRebel) / 100 +\r\n this.offer.fixedPriceRebel * 12\r\n );\r\n this.offerCompetitorPrice = Math.round(\r\n (this.offer.consumption * this.offer.variablePriceCompetitor) / 100 +\r\n this.offer.fixedPriceCompetitor * 12\r\n );\r\n\r\n this.offerPrice = this.offerCompetitorPrice - this.offerRebelPrice;\r\n\r\n this.initialOrder = Order.fromJS(JSON.parse(window.Offer));\r\n if (this.offer.possibleStartDate) {\r\n this.initialOrder.startDate = this.offer.possibleStartDate;\r\n }\r\n this.initialOrder.id = null;\r\n this.initialOrder.isCurrent = true;\r\n this.initialOrder.channel = this.offer.salesChannel;\r\n this.initialOrder.phone = this.offer.mobile;\r\n this.initHousing = (this.offer.housing as any) || this.initHousing;\r\n this.initArea = this.offer.area || this.initArea;\r\n this.initConsumption = this.offer.consumption || this.initConsumption;\r\n\r\n console.debug(\"Initial order from offer\", this.initialOrder, this.offer);\r\n } catch (error) {\r\n console.error(\"Failed to parse init order\");\r\n }\r\n }\r\n\r\n // Parse params from price entry on start page\r\n private parseParams() {\r\n if (!window.location && !(window as any).serverLocation) {\r\n return;\r\n }\r\n let params = parseQueryString(\r\n window.location\r\n ? window.location.search\r\n : (window as any).serverLocation.search\r\n );\r\n\r\n let consumption = parseInt(params.get(\"c\") as string);\r\n if (consumption) {\r\n this.initConsumption = consumption;\r\n }\r\n let housing = params.get(\"h\");\r\n if (housing == \"R\") {\r\n this.initHousing = Housing.RADHUS;\r\n } else if (housing == \"V\") {\r\n this.initHousing = Housing.VILLA;\r\n }\r\n\r\n let area = parseInt(params.get(\"a\") as string);\r\n if (area) {\r\n this.initArea = area;\r\n }\r\n\r\n this.initialObjectId = params.get(\"objectId\") || \"\";\r\n this.initialAccessDate = params.get(\"accessDate\") || \"\";\r\n\r\n // Parse init order from params\r\n this.initialOrder.pid = params.get(\"pid\") || \"\";\r\n this.initialOrder.firstName = params.get(\"firstName\") || \"\";\r\n this.initialOrder.lastName = params.get(\"lastName\") || \"\";\r\n this.initialOrder.phone = params.get(\"phone\") || \"\";\r\n this.initialOrder.email = params.get(\"email\") || \"\";\r\n this.initialOrder.street = params.get(\"street\") || \"\";\r\n this.initialOrder.zipCode = params.get(\"zipCode\") || \"\";\r\n this.initialOrder.city = params.get(\"city\") || \"\";\r\n this.initialOrder.isCurrent = params.get(\"isCurrent\") == \"0\" ? false : true;\r\n }\r\n\r\n componentDidMount() {\r\n (window as any).selectAgent && !this.isWarrant && this.fetchAgents();\r\n this.initialObjectId && this.fetchObject();\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n {this.offer && !!this.offer.comparingMonth && (\r\n \r\n {this.offer.salesChannel == Channel.SWADD ? (\r\n

\r\n Vi har jämfört fakturan du skickade in via Swadd:\r\n

\r\n ) : (\r\n

\r\n Vi har gjort en prisjämförelse och här är resultatet:\r\n

\r\n )}\r\n\r\n

Du sparar: {this.offerPrice} kr/år

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Nuvarande leverantörRebel
Elpris{this.offer.variablePriceCompetitor} öre/kWh{this.offer.variablePriceRebel} öre/kWh
Fast avgift{this.offer.fixedPriceCompetitor} kr/mån{this.offer.fixedPriceRebel} kr/mån
Årsförbrukning{this.offer.consumption} kWh/år{this.offer.consumption} kWh/år
Årskostnad{this.offerCompetitorPrice} kr{this.offerRebelPrice} kr
\r\n

Teckna i ett par snabba steg här!

\r\n

\r\n Du får:\r\n
\r\n - Garanterat billigare el med prisgaranti\r\n
\r\n - Ett enkelt rörligt elavtal utan bindningstid\r\n
- Ingen uppsägningstid\r\n
- 100% fossilfritt\r\n
- Busenkla digitala fakturor\r\n

\r\n
\r\n )}\r\n {(this.offer?.salesChannel == Channel.SODERBERG_PARTNERS ||\r\n this.offer?.salesChannel == Channel.SODERBERG_PARTNERS_SALARY) && (\r\n <>\r\n

\r\n {this.offer?.salesChannel == Channel.SODERBERG_PARTNERS\r\n ? \"I samband med din pensionsrådgivning så angav du \"\r\n : \"Du angav \"}\r\n att du bor i {this.housingToString(this.offer.housing)} på{\" \"}\r\n \r\n {this.offer.area}\r\n kvm\r\n {\" \"}\r\n och att {this.negotiatePeriodToString(this.offer.negotiatePeriod)}\r\n .\r\n

\r\n {this.offer.negotiatePeriod == NegotiatePeriod.ONE_YEAR ? (\r\n

\r\n Baserat på att du nyligen bytt elavtal eller elleverantör så\r\n behöver vi mer information för att kunna avgöra din besparing.\r\n Hör av dig till oss på{\" \"}\r\n \r\n info@renenkelbilligel.se\r\n {\" \"}\r\n med en bild eller motsvarande på din senaste elfaktura och\r\n fakturaspec så svarar vi med hur mycket du sparar på att byta.\r\n Om du själv gjort en jämförelse kan du gå vidare nedan.\r\n

\r\n ) : (\r\n <>\r\n

\r\n Baserat på de uppgifterna har vi värderat din årsförbrukning\r\n och uppskattat följade:\r\n

\r\n \r\n this.setState({ consumption })\r\n }\r\n />\r\n

\r\n \r\n Om du känner till din årsförbrukning eller tycker att\r\n värderingen blivit felaktig kan du själv ändra den här\r\n ovanför och få en ny beräknad besparing. Har du några\r\n funderingar är du alltid välkommen att kontakta oss på{\" \"}\r\n \r\n info@renenkelbilligel.se\r\n \r\n \r\n

\r\n \r\n )}\r\n

Teckna här så sköter vi allt med bytet!

\r\n

\r\n Du får:\r\n
\r\n - Garanterat billigare el med prisgaranti\r\n
\r\n - Ett enkelt rörligt elavtal utan bindningstid\r\n
- Ingen uppsägningstid\r\n
- 100% fossilfri el\r\n
- Busenkla digitala fakturor\r\n

\r\n \r\n )}\r\n {!this.isWarrant &&\r\n !(this.offer?.comparingMonth > 0) &&\r\n !(\r\n this.offer?.salesChannel == Channel.SODERBERG_PARTNERS ||\r\n this.offer?.salesChannel == Channel.SODERBERG_PARTNERS_SALARY ||\r\n this.offer?.salesChannel == Channel.SODERBERG_PARTNERS_TM ||\r\n (window as any).channel == Channel.SODERBERG_PARTNERS_TM\r\n ) && (\r\n <>\r\n
\r\n \r\n {!this.state.hideCompanyHint && (\r\n

\r\n Har du företag? Maila till{\" \"}\r\n \r\n info@renenkelbilligel.se\r\n \r\n

\r\n )}\r\n \r\n
\r\n \r\n )}\r\n {(window as any).objectChannel && !this.isWarrant && (\r\n <>\r\n
\r\n \r\n {(window as any).objectChannel == RealEstateChannel.V ? (\r\n \r\n Ange datum för tillträde eller kontraktsskrivning samt ID på\r\n kontraktet.\r\n \r\n ) : null}\r\n
\r\n {(window as any).objectChannel == RealEstateChannel.V ? (\r\n
\r\n this.fetchObject()}\r\n />\r\n
\r\n ) : null}\r\n
\r\n this.fetchObject()}\r\n skipFirstInput={this.state.skipFirstInput}\r\n ref={this.objectIdRef}\r\n />\r\n
\r\n\r\n {this.state.fetchingObject && }\r\n {this.state.fetchObjectNotFound && (\r\n

\r\n Objektet hittades inte, var vänlig kontrollera ID\r\n {(window as any).objectChannel == RealEstateChannel.V && (\r\n this.fetchObject(true)}>\r\n
\r\n Klicka här för att utöka sökningen med intilligande datum.\r\n
\r\n )}\r\n

\r\n )}\r\n\r\n {this.state.fetchObjectAlreadyCreated && (\r\n

\r\n Avtalet är redan registrerat, vill du verkligen fortsätta?\r\n

\r\n )}\r\n\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n {this.state.buyers?.length > 0 ? (\r\n
\r\n \r\n \r\n {this.state.buyers.map((buyer, index) => (\r\n \r\n ))}\r\n \r\n
\r\n ) : (\r\n <>{this.state.buyers ?

Inga köpare hittades

: null}\r\n )}\r\n {this.state.sellers?.length > 0 ? (\r\n
\r\n \r\n \r\n {this.state.sellers.map((seller, index) => (\r\n \r\n ))}\r\n \r\n
\r\n ) : (\r\n <>{this.state.sellers ?

Inga säljare hittades

: null}\r\n )}\r\n {(window as any).selectService ? (\r\n <>\r\n
\r\n \r\n \r\n
\r\n {this.state.fetchObjectAlreadyCreated && (\r\n

\r\n Avtalet är redan registrerat, vill du verkligen fortsätta?\r\n

\r\n )}\r\n \r\n ) : null}\r\n \r\n )}\r\n {(window as any).showCustomerType ? (\r\n
\r\n \r\n \r\n
\r\n ) : null}\r\n
\r\n \r\n \r\n {this.state.fetchingAddress && }\r\n {this.state.fetchAddressNotFound && (\r\n

Felaktigt personnummer, var vänlig försök igen

\r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n {this.state.orderType == OrderType.FLYTT && (\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n )}\r\n {this.state.orderType != OrderType.LEVBYTE && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n {this.state.orderType == OrderType.LEVBYTE &&\r\n (window as any).showStartDate && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n {(window as any).channel == Channel.FRIBERGASKOLAN &&\r\n !this.isWarrant && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n {(window as any).selectAgent == true && !this.isWarrant && (\r\n
\r\n \r\n {this.state.AgentStatus == FetchStatus.DONE && (\r\n \r\n agent.name +\r\n \" - \" +\r\n agent.offices?.map((office) => office.location).join(\", \")\r\n }\r\n multiple={false}\r\n options={this.state.Agents}\r\n placeholder=\"Välj mäklare...\"\r\n onChange={this.setAgent}\r\n onBlur={this.blurAgent}\r\n selected={this.state.Agent ? [this.state.Agent] : []}\r\n //defaultSelected={this.state.Agent ? [this.state.Agent] : []}\r\n paginationText={\"Visa fler...\"}\r\n selectHintOnEnter={true}\r\n />\r\n )}\r\n {this.state.AgentStatus == FetchStatus.FETCHING && }\r\n {this.state.AgentStatus == FetchStatus.ERROR && (\r\n

Kunde inte hämta mäklare

\r\n )}\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n {this.state.fetchingContact && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n )}\r\n {(window as any).showEan == true && !this.isWarrant && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n {(window as any).channel == \"NykvarnEl\" && !this.isWarrant && (\r\n \r\n )}\r\n {(window as any).showSalesData1 == true && (\r\n
\r\n {!!window.ClientCopyOverride?.SignupSalesDate1Label && (\r\n \r\n )}\r\n \r\n
\r\n )}\r\n {(window as any).showSalesData2 == true && (\r\n
\r\n {!!window.ClientCopyOverride?.SignupSalesDate2Label && (\r\n \r\n )}\r\n \r\n
\r\n )}\r\n {(window as any).showSalesDate == true && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n\r\n {(window as any).updateOffer == true ? null : (\r\n \r\n )}\r\n {this.isWarrant ? (\r\n \r\n

\r\n IP-Nummer: {this.initialOrder.ip}\r\n

\r\n {this.initialOrder.createdOn && (\r\n

\r\n Försäljningsdatum:{\" \"}\r\n {this.initialOrder.createdOn.format(\"YYYY-MM-DD\")}\r\n

\r\n )}\r\n

\r\n Fullmakten är giltig tills bytet är klart eller i max 6 månader\r\n

\r\n
\r\n ) : (\r\n
\r\n \r\n {(window as any).updateOffer == true\r\n ? this.offer == null\r\n ? \"Skicka till kund\"\r\n : \"Uppdatera och skicka\"\r\n : \"Skicka beställning\"}\r\n \r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n housingToString = (housing: Housing) => {\r\n switch (housing) {\r\n case Housing.FRITIDSHUS:\r\n return \"ett fritidshus\";\r\n case Housing.LAGENHET:\r\n return \"en lägenhet\";\r\n case Housing.RADHUS:\r\n return \"ett radhus\";\r\n case Housing.VILLA:\r\n return \"en villa\";\r\n default:\r\n \"\";\r\n }\r\n };\r\n\r\n negotiatePeriodToString = (negotiatePeriod: NegotiatePeriod) => {\r\n switch (negotiatePeriod) {\r\n case NegotiatePeriod.ONE_YEAR:\r\n return \"du bytt elavtal under de senaste året\";\r\n case NegotiatePeriod.FIVE_YEARS:\r\n return \"senast du bytte elavtal var för 3-5 år sedan\";\r\n case NegotiatePeriod.THREE_YEARS:\r\n return \"senast du bytte elavtal var för 1-3 år sedan\";\r\n case NegotiatePeriod.NEVER:\r\n return \"du inte gjort något aktivt val av elavtal\";\r\n default:\r\n return \"\";\r\n }\r\n };\r\n\r\n adjustZipcode = (zipcode: string): string => {\r\n // replace all non digits\r\n zipcode = zipcode.replace(/[^\\d]/g, \"\");\r\n return zipcode;\r\n };\r\n\r\n fetchAgents = async () => {\r\n try {\r\n this.setState({ AgentStatus: FetchStatus.FETCHING });\r\n let Agents = await new RealEstateAgentClient().list(\r\n undefined,\r\n (window as any).channel,\r\n undefined\r\n );\r\n this.setState({ Agents, AgentStatus: FetchStatus.DONE });\r\n } catch (error) {\r\n console.error(\"Failed to fetch Agents\", error);\r\n this.setState({ AgentStatus: FetchStatus.ERROR });\r\n }\r\n };\r\n\r\n setAgent = (Agent: RealEstateAgentModel[]) => {\r\n this.setState({ Agent: Agent.length > 0 ? Agent[0] : null });\r\n };\r\n\r\n blurAgent = () => {\r\n if (!this.state.Agent) {\r\n this.AgentRef.current && this.AgentRef.current.clear();\r\n }\r\n };\r\n\r\n onValidPid = async (pid: string) => {\r\n if (this.state.customerType != CustomerType.Business) {\r\n try {\r\n this.setState({\r\n fetchingAddress: true,\r\n fetchAddressNotFound: false,\r\n showNameInputs: false,\r\n });\r\n this.firstNameRef.current.setValue(\"\");\r\n this.lastNameRef.current.setValue(\"\");\r\n let address = await this.addressClient.getByPid(pid);\r\n\r\n this.firstNameRef.current.setValue(address.firstName);\r\n this.lastNameRef.current.setValue(address.lastName);\r\n !this.streetRef.current.getValue() &&\r\n this.streetRef.current.setValue(address.street);\r\n !this.zipCodeRef.current.getValue() &&\r\n this.zipCodeRef.current.setValue(address.zipCode);\r\n !this.cityRef.current.getValue() &&\r\n this.cityRef.current.setValue(address.city);\r\n\r\n this.setState({ fetchingAddress: false, showNameInputs: true });\r\n } catch (error) {\r\n if (error.status == 404) {\r\n this.setState({\r\n fetchingAddress: false,\r\n showNameInputs: false,\r\n fetchAddressNotFound: true,\r\n });\r\n } else {\r\n this.setState({ fetchingAddress: false, showNameInputs: true });\r\n }\r\n }\r\n }\r\n };\r\n\r\n onChangeBuyer = (event: ChangeEvent) => {\r\n this.setState({ selectedBuyerId: event.target.value });\r\n this.updateBuyer(\r\n event.target.value == \"-1\" ? null : this.state.buyers[event.target.value]\r\n );\r\n };\r\n\r\n onChangeSeller = (event: ChangeEvent) => {\r\n this.setState({ selectedSellerId: event.target.value });\r\n this.updateSeller(\r\n event.target.value == \"-1\" ? null : this.state.sellers[event.target.value]\r\n );\r\n };\r\n\r\n updateBuyer = (buyer: RealEstateObjectConsumers) => {\r\n if (buyer?.pid?.length == 10 || buyer?.pid?.length == 12) {\r\n this.pidRef.current?.setValue(buyer?.pid ?? \"\");\r\n }\r\n this.firstNameRef.current?.setValue(buyer?.firstName ?? \"\");\r\n this.lastNameRef.current?.setValue(buyer?.lastName ?? \"\");\r\n this.mobileRef.current?.setValue(buyer?.mobile ?? \"\");\r\n this.emailRef.current?.setValue(buyer?.email ?? \"\");\r\n this.setState({\r\n customerType: buyer?.customerType ?? CustomerType.Private,\r\n });\r\n };\r\n\r\n updateSeller = (seller: RealEstateObjectConsumers) => {\r\n this.contactPidRef.current?.setValue(seller?.pid ?? \"\");\r\n this.contactPidRef.current?.validate?.(seller?.pid ?? \"\");\r\n this.contactFirstNameRef.current?.setValue(seller?.firstName ?? \"\");\r\n this.contactLastNameRef.current?.setValue(seller?.lastName ?? \"\");\r\n this.contactPhoneRef.current?.setValue(seller?.mobile ?? \"\");\r\n this.contactEmailRef.current?.setValue(seller?.email ?? \"\");\r\n\r\n this.currentFirstNameRef.current?.setValue(seller?.firstName ?? \"\");\r\n this.currentLastNameRef.current?.setValue(seller?.lastName ?? \"\");\r\n\r\n this.setState({\r\n sellerCustomerType: seller?.customerType ?? CustomerType.Private,\r\n });\r\n };\r\n\r\n fetchObject = async (expandDateSearch = false) => {\r\n try {\r\n if (this.controller) {\r\n this.controller.abort();\r\n }\r\n\r\n const objectId = this.objectIdRef.current?.getValue();\r\n if (!objectId) {\r\n return;\r\n }\r\n this.controller = new AbortController();\r\n\r\n let object: RealEstateObject;\r\n if ((window as any).objectChannel == RealEstateChannel.V) {\r\n const accessDateString = this.objectAccessDateRef.current?.getValue();\r\n if (!accessDateString) {\r\n return;\r\n }\r\n const accessDate = moment.utc(\r\n this.objectAccessDateRef.current?.getValue(),\r\n \"YYYY-MM-DD\"\r\n );\r\n if (!accessDate.isValid()) {\r\n throw new Error(\"Invalid accessDate\");\r\n }\r\n this.setState({\r\n fetchingObject: true,\r\n fetchObjectNotFound: false,\r\n fetchObjectAlreadyCreated: false,\r\n orderType: OrderType.FLYTT,\r\n });\r\n object = await this.objectClient.get(\r\n objectId,\r\n accessDate,\r\n (window as any).objectCustomerId,\r\n RealEstateChannel.V,\r\n (window as any).channel,\r\n expandDateSearch,\r\n this.controller.signal\r\n );\r\n } else {\r\n this.setState({\r\n fetchingObject: true,\r\n fetchObjectNotFound: false,\r\n fetchObjectAlreadyCreated: false,\r\n orderType: OrderType.FLYTT,\r\n });\r\n object = await this.objectClient.get(\r\n objectId,\r\n undefined,\r\n undefined,\r\n (window as any).objectChannel,\r\n (window as any).channel,\r\n expandDateSearch,\r\n this.controller.signal\r\n );\r\n }\r\n\r\n console.debug(\"Got real estate object\", object);\r\n\r\n this.updateBuyer(object.buyers?.length == 1 ? object.buyers[0] : null);\r\n this.setState({\r\n selectedBuyerId: object.buyers?.length == 1 ? \"0\" : \"-1\",\r\n });\r\n\r\n this.streetRef.current?.setValue(object.street);\r\n this.zipCodeRef.current?.setValue(object.zipCode);\r\n this.cityRef.current?.setValue(object.city);\r\n\r\n this.updateSeller(object.sellers?.length == 1 ? object.sellers[0] : null);\r\n this.setState({\r\n selectedSellerId: object.sellers?.length == 1 ? \"0\" : \"-1\",\r\n });\r\n\r\n this.startDateRef.current?.setValue(\r\n object.startDate?.format(\"YYYY-MM-DD\") ?? \"\"\r\n );\r\n\r\n this.salesDateRef.current?.setValue(\r\n object.salesDate?.format(\"YYYY-MM-DD\") ?? \"\"\r\n );\r\n\r\n this.governmentApartmentNumberRef.current?.setValue(\r\n object.lmvNumber ?? \"\"\r\n );\r\n this.apartmentNumberRef.current?.setValue(\r\n object.internalPropertyNumber ?? \"\"\r\n );\r\n\r\n this.priceCalculatorRef.current?.onChangeHousing(object.housing);\r\n this.priceCalculatorRef.current?.setArea(object.area);\r\n\r\n if (object.realEstateAgent) {\r\n const agent = this.state.Agents?.find(\r\n (agent) => agent.email == object.realEstateAgent.email\r\n );\r\n if (agent == null) {\r\n this.setState({\r\n Agents: (this.state.Agents ?? []).concat(object.realEstateAgent),\r\n });\r\n }\r\n this.setState({ Agent: object.realEstateAgent });\r\n } else {\r\n this.setState({ Agent: null });\r\n }\r\n\r\n this.setState({\r\n fetchingObject: false,\r\n fetchObjectNotFound: false,\r\n fetchObjectAlreadyCreated: object.orderCreated,\r\n showNameInputs: true,\r\n buyers: object.buyers,\r\n sellers: object.sellers,\r\n object: object,\r\n objectStatus: object.status,\r\n objectStatusText: object.statusText,\r\n skipFirstInput: true,\r\n });\r\n } catch (error) {\r\n if (error?.name == \"AbortError\") {\r\n console.debug(\"Object fetch aborted\");\r\n } else {\r\n console.debug(\"Failed to update object information\", { error });\r\n this.setState({\r\n fetchingObject: false,\r\n fetchObjectNotFound: true,\r\n fetchObjectAlreadyCreated: false,\r\n });\r\n }\r\n }\r\n };\r\n\r\n onValidContactPid = async (pid: string) => {\r\n try {\r\n this.setState({ fetchingContact: true });\r\n let response = await this.addressClient.getByPid(pid);\r\n this.contactFirstNameRef.current.setValue(response.firstName);\r\n this.contactLastNameRef.current.setValue(response.lastName);\r\n } catch (error) {\r\n console.error(\"Failed to fetch contact name\", error);\r\n } finally {\r\n this.setState({ fetchingContact: false });\r\n }\r\n };\r\n\r\n onChangeOrderType = (button: Item) => {\r\n let orderType: OrderType = OrderType[button.value];\r\n this.setState({ orderType });\r\n };\r\n\r\n onChangeCustomerType = (button: Item) => {\r\n let customerType: CustomerType = CustomerType[button.value];\r\n this.setState({ customerType });\r\n };\r\n\r\n onChangeSellerCustomerType = (button: Item) => {\r\n let sellerCustomerType: CustomerType = CustomerType[button.value];\r\n this.setState({ sellerCustomerType });\r\n };\r\n\r\n onChangeConsumption = (consumption: number): void => {\r\n this.setState({\r\n consumption,\r\n });\r\n };\r\n\r\n onChangeTeamSelection = (club: string, team: string) => {\r\n this.setState({ team, club });\r\n };\r\n\r\n mapContactInputs = (inputs: any): Contact => {\r\n if (!inputs.contactLastName) {\r\n return null;\r\n }\r\n\r\n let phone = inputs.contactPhone;\r\n if (phone?.startsWith(\"07\") && phone?.length == 10) {\r\n phone = \"+46\" + phone.substring(1);\r\n }\r\n\r\n return {\r\n pid: inputs.contactPid,\r\n firstName: inputs.contactFirstName,\r\n lastName: inputs.contactLastName,\r\n mobile: phone,\r\n email: inputs.contactEmail,\r\n contactChannel: ContactChannel.SMS,\r\n contactType: ContactType.REALESTATESELLER,\r\n } as Contact;\r\n };\r\n\r\n mapInputs = (inputs: any): Order => {\r\n let priceState =\r\n this.priceCalculatorRef.current &&\r\n this.priceCalculatorRef.current.getState();\r\n\r\n let phone = inputs.phone;\r\n if (phone?.startsWith(\"07\") && phone?.length == 10) {\r\n phone = \"+46\" + phone.substring(1);\r\n }\r\n return {\r\n pid: inputs.pid,\r\n firstName: inputs.firstName,\r\n lastName: inputs.lastName,\r\n phone: phone,\r\n email: inputs.email,\r\n street: inputs.street,\r\n zipCode: inputs.zipCode,\r\n city: inputs.city,\r\n currentFirstName: inputs.currentFirstName,\r\n currentLastName: inputs.currentLastName,\r\n startDate: inputs.startDate,\r\n salesperson: inputs.salesperson,\r\n club: this.state.club,\r\n team: this.state.team,\r\n realEstateAgentId: this.state.Agent?.id,\r\n realEstateOfficeId: this.state.object?.realEstateOffice?.id,\r\n realEstateChainId: this.state.object?.realEstateChain?.id,\r\n ean: inputs.ean || this.initialOrder.ean,\r\n contact: this.mapContactInputs(inputs),\r\n salesData1: inputs.salesData1,\r\n salesData2: inputs.salesData2,\r\n salesData3: inputs.salesData3,\r\n salesData4: inputs.salesData4,\r\n salesDate: inputs.salesDate,\r\n objectId: this.state.object?.id,\r\n objectCustomerId: (window as any).objectCustomerId,\r\n objectChannel: (window as any).objectChannel,\r\n objectStatus: this.state.objectStatus,\r\n objectStatusText: this.state.objectStatusText,\r\n lmvNumber: inputs.governmentApartmentNumber,\r\n internalPropertyNumber: inputs.apartmentNumber,\r\n isCurrent: this.state.orderType == OrderType.LEVBYTE,\r\n channel:\r\n this.initialOrder.channel || (window as any).channel || Channel.WEB,\r\n offerId: this.offer ? this.offer.id : null,\r\n area: priceState ? priceState.area : this.initArea,\r\n consumption:\r\n priceState?.consumption ??\r\n this.state.consumption ??\r\n this.initialOrder.consumption,\r\n housing: priceState ? priceState.housing : this.initHousing,\r\n hasElectricity:\r\n inputs.services == null\r\n ? true\r\n : inputs.services\r\n .split(\",\")\r\n .findIndex((service) => service == \"electricity\") != -1,\r\n hasInsurance:\r\n inputs.services == null\r\n ? false\r\n : inputs.services\r\n .split(\",\")\r\n .findIndex((service) => service == \"insurance\") != -1,\r\n customerType: this.state.customerType ?? CustomerType.Private,\r\n } as Order;\r\n };\r\n\r\n confirm = async (order: Order) => {\r\n if (this.posting || !this.state.valid) {\r\n return;\r\n }\r\n\r\n this.confirmRef.current.show(order);\r\n this.posting = true;\r\n this.setState({\r\n status: Status.CONFIRM,\r\n });\r\n };\r\n\r\n submit = async (signatureId?: string) => {\r\n this.setState({\r\n status: Status.POSTING,\r\n });\r\n let order = this.formRef.current.getModel() as Order;\r\n order.isCurrent = this.state.orderType == OrderType.LEVBYTE;\r\n order.channel =\r\n this.initialOrder.channel || (window as any).channel || Channel.WEB;\r\n order.offerId = this.offer ? this.offer.id : null;\r\n\r\n let priceState =\r\n this.priceCalculatorRef.current &&\r\n this.priceCalculatorRef.current.getState();\r\n order.area = priceState ? priceState.area : this.initArea;\r\n order.consumption =\r\n priceState?.consumption ??\r\n this.state.consumption ??\r\n this.initialOrder.consumption;\r\n order.housing = priceState ? priceState.housing : this.initHousing;\r\n order.signatureId = signatureId;\r\n if (!order.startDate) {\r\n if (this.offer?.possibleStartDate) {\r\n order.startDate = this.offer.possibleStartDate;\r\n } else {\r\n order.startDate = undefined;\r\n }\r\n }\r\n\r\n console.debug(\"submitting order\", order);\r\n\r\n try {\r\n if ((window as any).updateOffer) {\r\n if (this.offer) {\r\n await new SoderbergPartnersClient().updateAndSend(\r\n order.offerId,\r\n order\r\n );\r\n } else {\r\n await new SoderbergPartnersClient().createAndSend(order);\r\n }\r\n } else {\r\n await new OrderClient().create((window as any).preorder == true, order);\r\n }\r\n window.location.replace(\"/tack\");\r\n } catch (error) {\r\n console.debug(\"Order save error\", error);\r\n this.setState({ status: Status.ERROR });\r\n } finally {\r\n this.posting = false;\r\n }\r\n };\r\n\r\n cancelSubmit = () => {\r\n this.posting = false;\r\n this.setState({\r\n status: Status.DRAFT,\r\n });\r\n };\r\n\r\n onValidForm = () => {\r\n this.setState({\r\n valid: true,\r\n });\r\n };\r\n\r\n onInvalidForm = () => {\r\n this.setState({\r\n valid: false,\r\n });\r\n };\r\n}\r\n","import { debounce } from \"lodash\";\r\nimport * as React from \"react\";\r\nimport { Offer, Savings, SoderbergPartnersClient } from \"../api/ApiClient\";\r\nimport { CopyOverride } from \"../api/Config\";\r\nimport SavingsDescriptionModal from \"./SavingsDescriptionModal\";\r\ndeclare global {\r\n interface Window {\r\n ClientCopyOverride: CopyOverride;\r\n }\r\n}\r\n\r\ninterface Props {\r\n onChangeConsumption?(consumption: number): void;\r\n offer: Offer;\r\n}\r\n\r\ninterface State {\r\n consumption: number;\r\n savings?: Savings;\r\n calculating: boolean;\r\n}\r\n\r\nexport default class SavingsCalculator extends React.Component {\r\n private savingsClient: SoderbergPartnersClient =\r\n new SoderbergPartnersClient();\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n\r\n this.getSavings = debounce(this.getSavings, 200);\r\n\r\n this.state = {\r\n consumption: this.props.offer.consumption,\r\n calculating: false,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.getSavings(this.state.consumption);\r\n }\r\n\r\n render() {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n kWh\r\n
\r\n
\r\n
\r\n \r\n Du sparar {this.state.savings?.averageSaving} kr/år\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n\r\n updateConsumption = (event: React.ChangeEvent): void => {\r\n this.onChangeConsumption(parseInt(event.target.value));\r\n };\r\n\r\n onChangeConsumption = (consumption: number): void => {\r\n this.setState({\r\n consumption,\r\n });\r\n\r\n this.props.onChangeConsumption &&\r\n this.props.onChangeConsumption(consumption);\r\n this.getSavings(consumption);\r\n };\r\n\r\n getSavings = async (consumption: number): Promise => {\r\n this.setState({ calculating: true });\r\n try {\r\n let savings = await this.savingsClient.estimatedSavings(\r\n this.props.offer.id,\r\n consumption\r\n );\r\n this.setState({ savings, calculating: false });\r\n console.debug(\"Got estimate savings\", savings);\r\n } catch (error) {\r\n console.error(\"Failed to estimate savings\", error);\r\n this.setState({ savings: null, calculating: false });\r\n }\r\n };\r\n}\r\n","import * as Moment from \"moment\";\r\nimport * as React from \"react\";\r\nimport { SignupForm } from \"./SignupForm\";\r\nMoment.locale(\"sv\");\r\n\r\nconst App: React.SFC = () => (\r\n
\r\n \r\n
\r\n);\r\n\r\nexport default App;\r\n","import * as React from \"react\";\r\nimport * as ReactDOM from \"react-dom\";\r\nimport App from \"../../signup/SignupApp\";\r\n\r\nwindow.addEventListener(\r\n \"DOMContentLoaded\",\r\n function() {\r\n ReactDOM.render(, document.getElementById(\"signup-app\"));\r\n },\r\n false\r\n);\r\n","var map = {\n\t\"./sv\": 98760,\n\t\"./sv.js\": 98760\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 61696;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.j = 830;","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t830: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunk\"] = self[\"webpackChunk\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\n__webpack_require__.O(undefined, [736], () => (__webpack_require__(57147)))\n__webpack_require__.O(undefined, [736], () => (__webpack_require__(26981)))\nvar __webpack_exports__ = __webpack_require__.O(undefined, [736], () => (__webpack_require__(5769)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","Channel","ClientBase","defaultUrl","ClientConfig","ApiBaseUrl","options","this","token","headers","Promise","resolve","AddressClient","baseUrl","http","undefined","window","getBaseUrl","pid","signal","url_","Error","replace","encodeURIComponent","options_","method","transformOptions","then","transformedOptions_","fetch","_response","processGetByPid","response","status","_headers","forEach","v","k","text","_responseText","resultData200","JSON","parse","jsonParseReviver","Address","fromJS","throwException","AuthenticationClient","processInitiate","BankIdInitResponse","orderRef","qrState","processStatus","StatusResponse","body","stringify","processInitiateSignature","processGenerateToken","TokenResponse","requestToken","processAuthenticateToken","AuthenticationResponse","ObjectClient","objectNumber","accessDate","customerId","channel","salesChannel","expandDateSearchIfNotFound","toISOString","processGet","RealEstateObject","processGetFasadRaw","OrderClient","preorder","processCreate","resultData201","externalID","processGetByGuid","Order","elavtalID","processCompletionEA","completionId","processCompletion","id","processGetById","elavtalId","processPdf","processGetPdf","processSync","processCancelInsurance","PriceClient","consumption","processCalculate","PriceResponse","processAverage","AveragePrices","processList","result200","Array","isArray","item","push","SpotPrice","processListLatest","RealEstateAgentClient","RealEstateAgentModel","name","SoderbergPartnersClient","processEstimatedSavings","Savings","processUpdateConsumptions","processUpdateAndSend","processCreateAndSend","data","property","hasOwnProperty","_data","firstName","lastName","street","zipCode","city","result","init","RealEstateObjectStatus","Housing","InvoiceDataStatus","InvoiceDeliveryMethod","PropertyType","CommunicationType","SupplierChangeType","CustomerType","PersonalIdType","RecurringPaymentType","PaymentStatus","ContractPriceType","ContractDebitType","DeliveryMethod","InvoiceStatus","EAHousing","Quality","InvoiceConsumptionInstallationStatus","MeasureQuality","QuantityType","Direction","MarketCommunicationErrorCode","MeasureMethod","ObservationLength","SettlementMethod","InstallationStatus","MeterReadingFrequency","MeterInfoOrigin","PropertyEventType","PropertyStatus","NetActorType","Elavtalsstatus","TypedTagType","ArticleUnit","ChangeOfMeasuringMethodRequestStatus","InvoicingStatus","AvyInvoiceStatus","RealEstateOrderStatus","AddOn","RealEstateOrderContractMethod","RealEstateChainOwner","chains","RealEstateChainModel","toJSON","realEstateChainOwnerId","owner","offices","RealEstateOfficeModel","vitecCustomerId","apiKey","vitecFilesAccess","mspecsSubscriberId","contractEmail","syncObjects","signupLink","location","externalId","realEstateChainId","chain","agents","createdOn","moment","toString","modifiedOn","group","mspecsId","email","phone","realEstateCompany","bannerId","officeId","office","chainId","CollectStatus","autoStartToken","qrCodeBase64Encoded","state","Status","ContactChannel","ContactType","User","company","message","user","signatureId","RealEstateChannel","Contact","mobile","contactChannel","customText","contactType","AddOnStatus","CompletionType","Signature","completedOn","ocspResponse","signatureData","userVisibleData","initiatedIP","signedIP","environmentType","environmentDeviceInfo","clientVersion","BatteryVendor","ChargerVendor","HvacVendor","InverterVendor","MeterVendor","VehicleVendor","VendorType","BatteryBrand","ChargerBrand","HvacBrand","InverterBrand","MeterBrand","VehicleBrand","Intervention_domain","Intervention_resolution_access","Intervention_resolution_agent","MspecsSubscriberStatus","ean","isCurrent","currentFirstName","currentLastName","startDate","housing","area","ip","salesperson","parentID","createdInCrm","elavtalsserviceId","realEstateAgentId","realEstateAgent","realEstateOfficeId","realEstateOffice","realEstateChain","contactId","contact","offerId","club","team","salesData1","salesData2","salesData3","salesData4","salesDate","objectId","objectChannel","objectCustomerId","objectStatus","objectStatusText","lmvNumber","internalPropertyNumber","signature","easyQuoteId","hasElectricity","hasInsurance","insuranceStatus","insuranceStatusDate","hasMortgage","mortgageStatus","mortgageStatusDate","createdBy","completionType","completionContactTypeId","completionContactFirstName","completionContactLastName","completionSalesChannelName","insuranceReminderSent","notes","customerType","auditEntityId","SignInitiateRequest","order","sentTo","completed","NegotiatePeriod","RealEstateOffice","RealEstateChain","RealEstateObjectConsumers","sellerFirstName","sellerLastName","sellerMobile","sellerEmail","sellers","buyers","orderCreated","statusText","EstimatedMonthSource","BillogramStatus","DevicePlatform","averageSaving","guaranteedSaving","OfferLog","timestamp","Offer","possibleStartDate","comparingMonth","variablePriceRebel","fixedPriceRebel","variablePriceCompetitor","fixedPriceCompetitor","comparingCompetitor","netArea","negotiatePeriod","advisor","savings","unsubscribed","logs","orders","reminderSent","consumtion","month","price2000","price5000","price20000","fromDate","price","priceSE1","priceSE2","priceSE3","priceSE4","priceCertificate","priceEnvironment","priceProfileCostSE1","priceProfileCostSE2","priceProfileCostSE3","priceProfileCostSE4","priceBalanceCost","priceSupplierCost","priceAdministrationCost","ApiException","obj","isApiException","Checkbox","props","setValue","getValue","event","currentTarget","checked","className","onChange","handleChange","type","position","onClick","labelClick","labelBold","label","React","withFormsy","Input","firstInput","value","adjustValue","onValidInput","isValidValue","setState","errorMessage","skipFirstInput","getErrorMessage","element","multiline","onBlur","placeholder","isValid","disabled","rows","min","max","DateInput","required","ref","innerRef","addValidationRule","values","test","checksum","i","number","parseInt","EanInput","validations","isEan","validationError","onValidPid","EmailInput","validate","RadioButton","e","button","active","ButtonGroup","role","buttons","map","key","MultiselectGroup","split","findIndex","selectedValue","isSelected","filter","join","PhoneInput","length","startsWith","matchRegexp","adjustPhone","PidInput","Business","substring","adjustPid","Spinner","style","width","height","parseQueryString","input","Map","trim","decodeURIComponent","set","FetchStatus","ConfirmModal","show","submitting","signatureStatus","sessionStorage","getItem","orderRefSessionStorageKey","FETCHING","IDLE","autoLaunch","isMobile","onClose","initiateSignature","onConfirm","async","console","debug","posting","errorCount","link","authenticationClient","isIOS","setItem","href","qrCodeBase64","setTimeout","checkStatus","error","ERROR","Pending","Failed","Complete","removeItem","params","search","get","title","footer","requireSignature","src","handleClose","handleConfirm","postingTitle","Modal","onHide","backdrop","Club","HowItWorksModal","NykvarnClubSelection","initClub","initTeam","NIF","toggleClub","bind","NSK","NGF","target","PriceDescriptionModal","averagePrices","onChangeConsumption","priceClient","average","step","PriceCalculator","LAGENHET","RADHUS","getConsumption","getPrice","onChangeArea","showConsumption","VILLA","calculating","calculate","debounce","initHousing","initArea","initConsumption","onChangeHousing","ClientCopyOverride","SignupSliderHelp","updateArea","htmlFor","updateConsumption","SavingsDescriptionModal","spotprice","list","offer","spotprices","sort","p1","p2","SODERBERG_PARTNERS","FRITIDSHUS","ONE_YEAR","THREE_YEARS","FIVE_YEARS","NEVER","format","toLowerCase","toFixed","OrderType","SavingsCalculator","getSavings","savingsClient","estimatedSavings","SignupForm","zipcode","AgentStatus","Agents","DONE","Agent","AgentRef","current","clear","fetchingAddress","fetchAddressNotFound","showNameInputs","firstNameRef","lastNameRef","addressClient","getByPid","address","streetRef","zipCodeRef","cityRef","selectedBuyerId","updateBuyer","selectedSellerId","updateSeller","buyer","pidRef","mobileRef","emailRef","Private","seller","contactPidRef","contactFirstNameRef","contactLastNameRef","contactPhoneRef","contactEmailRef","currentFirstNameRef","currentLastNameRef","sellerCustomerType","expandDateSearch","controller","abort","objectIdRef","AbortController","V","objectAccessDateRef","fetchingObject","fetchObjectNotFound","fetchObjectAlreadyCreated","orderType","FLYTT","objectClient","object","startDateRef","salesDateRef","governmentApartmentNumberRef","apartmentNumberRef","priceCalculatorRef","setArea","find","agent","concat","fetchingContact","inputs","contactLastName","contactPhone","contactPid","contactFirstName","contactEmail","SMS","REALESTATESELLER","priceState","getState","initialOrder","mapContactInputs","governmentApartmentNumber","apartmentNumber","LEVBYTE","WEB","services","service","valid","confirmRef","CONFIRM","POSTING","formRef","getModel","updateOffer","updateAndSend","createAndSend","create","DRAFT","parseParams","parseInitOrder","parseOffer","fetchObject","hideCompanyHint","isWarrant","InitOrder","offerRebelPrice","Math","round","offerCompetitorPrice","offerPrice","serverLocation","initialObjectId","initialAccessDate","selectAgent","fetchAgents","onSubmit","confirm","onValid","onValidForm","onInvalid","onInvalidForm","mapping","mapInputs","formNoValidate","noValidate","SWADD","SODERBERG_PARTNERS_SALARY","housingToString","negotiatePeriodToString","SODERBERG_PARTNERS_TM","onChangeBuyer","index","onChangeSeller","selectService","showCustomerType","RadioGroup","onChangeCustomerType","requirePid","skipValidation","adjustZipcode","onChangeOrderType","showStartDate","FRIBERGASKOLAN","labelKey","multiple","setAgent","blurAgent","selected","paginationText","selectHintOnEnter","onChangeSellerCustomerType","onValidContactPid","showEan","onChangeTeamSelection","showSalesData1","SignupSalesDate1Label","SignupSalesDate1Placeholder","showSalesData2","SignupSalesDate2Label","SignupSalesDate2Placeholder","showSalesDate","SignupTermsChange","SignupTermsMove","SignupTermsLink","submit","cancelSubmit","Moment","addEventListener","ReactDOM","document","getElementById","webpackContext","req","webpackContextResolve","__webpack_require__","o","code","keys","Object","module","exports","__webpack_module_cache__","moduleId","cachedModule","loaded","__webpack_modules__","call","m","amdO","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","j","every","splice","r","n","getter","__esModule","d","a","definition","defineProperty","enumerable","g","globalThis","Function","prop","prototype","Symbol","toStringTag","nmd","paths","children","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","__webpack_exports__"],"sourceRoot":""}