{"version":3,"sources":["CustomerAPI.ts"],"names":[],"mappings":"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","file":"CustomerAPI.js","sourcesContent":["declare var CustomerAPIUrl: any;\r\n\r\nclass CustomerAPIBase {\r\n protected transformOptions(options: JQueryAjaxSettings) {\r\n var jwt = localStorage.getItem(\"loginToken\");\r\n options.headers[\"Content-Type\"] = \"application/json; charset=UTF-8\";\r\n options.headers[\"Accept\"] = \"application/json; charset=UTF-8\";\r\n options.headers[\"Authorization\"] = 'Bearer ' + jwt;\r\n options.headers[\"X-Language\"] = localizer.LangShortCode;\r\n\r\n return options;\r\n }\r\n}\r\n/* tslint:disable */\r\n//----------------------\r\n// \r\n// Generated using the NSwag toolchain v9.11.6282.35315 (NJsonSchema v8.10.6282.29572) (http://NSwag.org)\r\n// \r\n//----------------------\r\n\r\nmodule CustomerAPI {\r\n\r\n export class AccountClient extends CustomerAPIBase {\r\n baseUrl: string | undefined = undefined;\r\n beforeSend: any = undefined;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string) {\r\n super();\r\n this.baseUrl = baseUrl !== undefined ? baseUrl : \"\";\r\n }\r\n\r\n getUser(onSuccess?: (result: WebUser) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/User\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetUserWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetUserWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetUserWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetUser(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetUser(xhr: any): WebUser {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebUser | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? WebUser.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n setUserData(applicationName: string, value: WebUserChangeable, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/SetUserData\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(value ? value.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"put\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"applicationName\": applicationName,\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processSetUserDataWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processSetUserDataWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processSetUserDataWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processSetUserData(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processSetUserData(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n register(user: WebUserRegisterInfo, onSuccess?: () => void, onFail?: (exception: WebError | WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/Register\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(user ? user.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processRegisterWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processRegisterWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processRegisterWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processRegister(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processRegister(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 409) {\r\n let result409: WebError | null = null;\r\n let resultData409 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result409 = resultData409 ? WebError.fromJS(resultData409) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result409);\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n changePassword(changePassword: ChangePassword, onSuccess?: () => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/ChangePassword\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(changePassword ? changePassword.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processChangePasswordWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processChangePasswordWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processChangePasswordWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processChangePassword(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processChangePassword(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n this.throwException(\"A server error occurred.\", status, responseText);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n forgotPassword(email: string, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/ForgotPassword/{email}\";\r\n if (email === undefined || email === null)\r\n throw new Error(\"The parameter 'email' must be defined.\");\r\n url_ = url_.replace(\"{email}\", encodeURIComponent(\"\" + email));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processForgotPasswordWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processForgotPasswordWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processForgotPasswordWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processForgotPassword(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processForgotPassword(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n changePasswordFromResetGUID(resetData: ResetPassword, onSuccess?: () => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/ChangePasswordFromResetGUID\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(resetData ? resetData.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processChangePasswordFromResetGUIDWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processChangePasswordFromResetGUIDWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processChangePasswordFromResetGUIDWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processChangePasswordFromResetGUID(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processChangePasswordFromResetGUID(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n this.throwException(\"A server error occurred.\", status, responseText);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n renewToken(onSuccess?: (result: Token) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/RenewToken\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processRenewTokenWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processRenewTokenWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processRenewTokenWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processRenewToken(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processRenewToken(xhr: any): Token {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: Token | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? Token.fromJS(resultData200) : new Token();\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n getEvents(onSuccess?: (result: Token) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Account/GetEvents\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetEventsWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetEventsWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetEventsWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetEvents(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetEvents(xhr: any): Token {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: Token | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? Token.fromJS(resultData200) : new Token();\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n protected throwException(message: string, status: number, response: string, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new SwaggerException(message, status, response, null);\r\n }\r\n }\r\n\r\n export class DevicesClient extends CustomerAPIBase {\r\n baseUrl: string | undefined = undefined;\r\n beforeSend: any = undefined;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string) {\r\n super();\r\n this.baseUrl = baseUrl !== undefined ? baseUrl : \"\";\r\n }\r\n\r\n get(onSuccess?: (result: WebDevice[]) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGet(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGet(xhr: any): WebDevice[] {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebDevice[] | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n if (resultData200 && resultData200.constructor === Array) {\r\n result200 = [];\r\n for (let item of resultData200)\r\n result200.push(WebDevice.fromJS(item));\r\n }\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n update(value: WebDevice, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(value ? value.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"put\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processUpdateWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processUpdateWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processUpdateWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processUpdate(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processUpdate(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n getMeasurements(imei: number, maxAge: number, maxResults: number, onSuccess?: (result: GetMeasurementsResponse) => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices/GetMeasurements?\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined and cannot be null.\");\r\n else\r\n url_ += \"imei=\" + encodeURIComponent(\"\" + imei) + \"&\";\r\n if (maxAge === undefined || maxAge === null)\r\n throw new Error(\"The parameter 'maxAge' must be defined and cannot be null.\");\r\n else\r\n url_ += \"maxAge=\" + encodeURIComponent(\"\" + maxAge) + \"&\";\r\n if (maxResults === undefined)\r\n throw new Error(\"The parameter 'maxResults' must be defined.\");\r\n else\r\n url_ += \"maxResults=\" + encodeURIComponent(\"\" + maxResults) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetMeasurementsWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetMeasurementsWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetMeasurementsWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetMeasurements(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetMeasurements(xhr: any): GetMeasurementsResponse {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: GetMeasurementsResponse | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? GetMeasurementsResponse.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n delete(imei: number, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"delete\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processDeleteWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processDeleteWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processDeleteWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processDelete(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processDelete(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n assignToUser(deviceIMEI: number, onSuccess?: (result: WebDevice) => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices/AssignToUser/{deviceIMEI}\";\r\n if (deviceIMEI === undefined || deviceIMEI === null)\r\n throw new Error(\"The parameter 'deviceIMEI' must be defined.\");\r\n url_ = url_.replace(\"{deviceIMEI}\", encodeURIComponent(\"\" + deviceIMEI));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"put\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processAssignToUserWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processAssignToUserWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processAssignToUserWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processAssignToUser(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processAssignToUser(xhr: any): WebDevice {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebDevice | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? WebDevice.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n getBatteryType(imei: number, onSuccess?: (result: WebBatteryType) => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices/BatteryType/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetBatteryTypeWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetBatteryTypeWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetBatteryTypeWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetBatteryType(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetBatteryType(xhr: any): WebBatteryType {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebBatteryType | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? WebBatteryType.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n setBatteryType(imei: number, type: WebBatteryType, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices/BatteryType/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(type ? type.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processSetBatteryTypeWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processSetBatteryTypeWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processSetBatteryTypeWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processSetBatteryType(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processSetBatteryType(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n getSupprotedBatteryTypes(onSuccess?: (result: WebBatteryType[]) => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Devices/SupportedBatteryTypes\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetSupprotedBatteryTypesWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetSupprotedBatteryTypesWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetSupprotedBatteryTypesWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetSupprotedBatteryTypes(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetSupprotedBatteryTypes(xhr: any): WebBatteryType[] {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebBatteryType[] | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n if (resultData200 && resultData200.constructor === Array) {\r\n result200 = [];\r\n for (let item of resultData200)\r\n result200.push(WebBatteryType.fromJS(item));\r\n }\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n protected throwException(message: string, status: number, response: string, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new SwaggerException(message, status, response, null);\r\n }\r\n }\r\n\r\n export class NotificationServiceClient extends CustomerAPIBase {\r\n baseUrl: string | undefined = undefined;\r\n beforeSend: any = undefined;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string) {\r\n super();\r\n this.baseUrl = baseUrl !== undefined ? baseUrl : \"\";\r\n }\r\n\r\n get(imei: string, onSuccess?: (result: GetTriggerResponse) => void, onFail?: (exception: string | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Notifications/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGet(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGet(xhr: any): GetTriggerResponse {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: GetTriggerResponse | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? GetTriggerResponse.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: string | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n post(trigger: Trigger, onSuccess?: (result: Trigger) => void, onFail?: (exception: string | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Notifications\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(trigger ? trigger.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processPostWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processPostWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processPostWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processPost(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processPost(xhr: any): Trigger {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: Trigger | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? Trigger.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: string | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n put(id: number, trigger: Trigger, onSuccess?: (result: PutTriggerResponse) => void, onFail?: (exception: string | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Notifications/{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(trigger ? trigger.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"put\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processPutWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processPutWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processPutWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processPut(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processPut(xhr: any): PutTriggerResponse {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 204) {\r\n let result204: PutTriggerResponse | null = null;\r\n let resultData204 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result204 = resultData204 ? PutTriggerResponse.fromJS(resultData204) : null;\r\n return result204;\r\n } else if (status === 400) {\r\n let result400: string | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n delete(id: number, onSuccess?: (result: DeleteTriggerResponse) => void, onFail?: (exception: string | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Notifications/{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_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"delete\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processDeleteWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processDeleteWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processDeleteWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processDelete(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processDelete(xhr: any): DeleteTriggerResponse {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: DeleteTriggerResponse | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? DeleteTriggerResponse.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: string | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 !== undefined ? resultData400 : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n event(secret: string, triggerEvent: TriggerEvent, onSuccess?: () => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Notifications/Event?\";\r\n if (secret === undefined)\r\n throw new Error(\"The parameter 'secret' must be defined.\");\r\n else\r\n url_ += \"secret=\" + encodeURIComponent(\"\" + secret) + \"&\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(triggerEvent ? triggerEvent.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processEventWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processEventWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processEventWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processEvent(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processEvent(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 401) {\r\n this.throwException(\"A server error occurred.\", status, responseText);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n protected throwException(message: string, status: number, response: string, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new SwaggerException(message, status, response, null);\r\n }\r\n }\r\n\r\n export class PaymentClient extends CustomerAPIBase {\r\n baseUrl: string | undefined = undefined;\r\n beforeSend: any = undefined;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string) {\r\n super();\r\n this.baseUrl = baseUrl !== undefined ? baseUrl : \"\";\r\n }\r\n\r\n getAll(onSuccess?: (result: WebPayment[]) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/api/Payment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetAllWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetAllWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetAllWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetAll(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetAll(xhr: any): WebPayment[] {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebPayment[] | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n if (resultData200 && resultData200.constructor === Array) {\r\n result200 = [];\r\n for (let item of resultData200)\r\n result200.push(WebPayment.fromJS(item));\r\n }\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n post(value: WebPurchase, onSuccess?: (result: any) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/api/Payment\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(value ? value.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processPostWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processPostWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processPostWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processPost(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processPost(xhr: any): any {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: any | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n get(id: number, onSuccess?: (result: WebPayment) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/api/Payment/{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_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGet(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGet(xhr: any): WebPayment {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebPayment | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? WebPayment.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n protected throwException(message: string, status: number, response: string, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new SwaggerException(message, status, response, null);\r\n }\r\n }\r\n\r\n export class ScriptGeneratorClient extends CustomerAPIBase {\r\n baseUrl: string | undefined = undefined;\r\n beforeSend: any = undefined;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string) {\r\n super();\r\n this.baseUrl = baseUrl !== undefined ? baseUrl : \"\";\r\n }\r\n\r\n getTypeScript(onSuccess?: (result: any) => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/api/ScriptGenerator/TypeScript\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetTypeScriptWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetTypeScriptWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetTypeScriptWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetTypeScript(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetTypeScript(xhr: any): any {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: any | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 !== undefined ? resultData200 : null;\r\n return result200;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n protected throwException(message: string, status: number, response: string, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new SwaggerException(message, status, response, null);\r\n }\r\n }\r\n\r\n export class SubscriptionsClient extends CustomerAPIBase {\r\n baseUrl: string | undefined = undefined;\r\n beforeSend: any = undefined;\r\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\r\n\r\n constructor(baseUrl?: string) {\r\n super();\r\n this.baseUrl = baseUrl !== undefined ? baseUrl : \"\";\r\n }\r\n\r\n getSetupIntent(): JQueryPromise {\r\n let url_ = this.baseUrl + \"/card/setup-intent\";\r\n\r\n return jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n type: \"get\",\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n }));\r\n }\r\n\r\n confirmSetupIntent(intent: any): JQueryPromise {\r\n let url_ = this.baseUrl + \"/card/confirm-intent\";\r\n var content = JSON.stringify(intent ? intent : null);\r\n\r\n return jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n type: \"post\",\r\n data: content,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n }));\r\n }\r\n\r\n getSubscription(imei: number, onSuccess?: (result: WebSubscription) => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"get\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processGetSubscriptionWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processGetSubscriptionWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processGetSubscriptionWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processGetSubscription(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processGetSubscription(xhr: any): WebSubscription {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebSubscription | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? WebSubscription.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n stopSubscription(imei: number, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"delete\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processStopSubscriptionWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processStopSubscriptionWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processStopSubscriptionWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processStopSubscription(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processStopSubscription(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n removePaymentCards(onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/RemovePaymentCards\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processRemovePaymentCardsWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processRemovePaymentCardsWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processRemovePaymentCardsWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processRemovePaymentCards(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processRemovePaymentCards(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n stripeCreateCustomer(onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/CreateStripeCustomer\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processStripeCreateCustomerWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processStripeCreateCustomerWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processStripeCreateCustomerWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processStripeCreateCustomer(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processStripeCreateCustomer(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n stripeStartRecurring(imei: number, onSuccess?: (result: WebStartRecurringResult) => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/StartStripeRecurring/{imei}\";\r\n if (imei === undefined || imei === null)\r\n throw new Error(\"The parameter 'imei' must be defined.\");\r\n url_ = url_.replace(\"{imei}\", encodeURIComponent(\"\" + imei));\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processStripeStartRecurringWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processStripeStartRecurringWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processStripeStartRecurringWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processStripeStartRecurring(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processStripeStartRecurring(xhr: any): WebStartRecurringResult {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n let result200: WebStartRecurringResult | null = null;\r\n let resultData200 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result200 = resultData200 ? WebStartRecurringResult.fromJS(resultData200) : null;\r\n return result200;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n stripeChangeCard(data: StripeCardData, onSuccess?: () => void, onFail?: (exception: WebError | string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/ChangeStripeCard\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = JSON.stringify(data ? data.toJS() : null);\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processStripeChangeCardWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processStripeChangeCardWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processStripeChangeCardWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processStripeChangeCard(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processStripeChangeCard(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status === 400) {\r\n let result400: WebError | null = null;\r\n let resultData400 = responseText === \"\" ? null : JSON.parse(responseText, this.jsonParseReviver);\r\n result400 = resultData400 ? WebError.fromJS(resultData400) : null;\r\n this.throwException(\"A server error occurred.\", status, responseText, result400);\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n stripeEvent(onSuccess?: () => void, onFail?: (exception: string, reason: string) => void) {\r\n let url_ = this.baseUrl + \"/Subscriptions/StripeEvent\";\r\n url_ = url_.replace(/[?&]$/, \"\");\r\n\r\n const content_ = \"\";\r\n\r\n jQuery.ajax(this.transformOptions({\r\n url: url_,\r\n beforeSend: this.beforeSend,\r\n type: \"post\",\r\n data: content_,\r\n dataType: \"text\",\r\n headers: {\r\n \"Content-Type\": \"application/json; charset=UTF-8\",\r\n \"Accept\": \"application/json; charset=UTF-8\"\r\n }\r\n })).done((data, textStatus, xhr) => {\r\n this.processStripeEventWithCallbacks(url_, xhr, onSuccess, onFail);\r\n }).fail((xhr) => {\r\n this.processStripeEventWithCallbacks(url_, xhr, onSuccess, onFail);\r\n });\r\n }\r\n\r\n private processStripeEventWithCallbacks(url: string, xhr: any, onSuccess?: any, onFail?: any): void {\r\n try {\r\n let result = this.processStripeEvent(xhr);\r\n if (onSuccess !== undefined)\r\n onSuccess(result);\r\n } catch (e) {\r\n if (onFail !== undefined)\r\n onFail(e, \"http_service_exception\");\r\n }\r\n }\r\n\r\n protected processStripeEvent(xhr: any): void {\r\n const responseText = xhr.responseText;\r\n const status = xhr.status;\r\n\r\n if (status === 200) {\r\n return null;\r\n } else if (status !== 200 && status !== 204) {\r\n this.throwException(\"An unexpected server error occurred.\", status, responseText);\r\n }\r\n return null;\r\n }\r\n\r\n protected throwException(message: string, status: number, response: string, result?: any): any {\r\n if (result !== null && result !== undefined)\r\n throw result;\r\n else\r\n throw new SwaggerException(message, status, response, null);\r\n }\r\n }\r\n\r\n export class WebUserChangeable {\r\n email: string | null | undefined;\r\n name: string | null | undefined;\r\n countryCode: number | undefined;\r\n phoneNumber: string | null | undefined;\r\n address: string | null | undefined;\r\n born: Date | undefined;\r\n sex: Sex | undefined;\r\n receiveNewsletterPhone: boolean | undefined;\r\n receiveNewsletterMail: boolean | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.email = data[\"email\"] !== undefined ? data[\"email\"] : undefined;\r\n this.name = data[\"name\"] !== undefined ? data[\"name\"] : undefined;\r\n this.countryCode = data[\"countryCode\"] !== undefined ? data[\"countryCode\"] : undefined;\r\n this.phoneNumber = data[\"phoneNumber\"] !== undefined ? data[\"phoneNumber\"] : undefined;\r\n this.address = data[\"address\"] !== undefined ? data[\"address\"] : undefined;\r\n this.born = data[\"born\"] ? new Date(data[\"born\"].toString()) : undefined;\r\n this.sex = data[\"sex\"] !== undefined ? data[\"sex\"] : undefined;\r\n this.receiveNewsletterPhone = data[\"receiveNewsletterPhone\"] !== undefined ? data[\"receiveNewsletterPhone\"] : undefined;\r\n this.receiveNewsletterMail = data[\"receiveNewsletterMail\"] !== undefined ? data[\"receiveNewsletterMail\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebUserChangeable {\r\n return new WebUserChangeable(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"email\"] = this.email !== undefined ? this.email : undefined;\r\n data[\"name\"] = this.name !== undefined ? this.name : undefined;\r\n data[\"countryCode\"] = this.countryCode !== undefined ? this.countryCode : undefined;\r\n data[\"phoneNumber\"] = this.phoneNumber !== undefined ? this.phoneNumber : undefined;\r\n data[\"address\"] = this.address !== undefined ? this.address : undefined;\r\n data[\"born\"] = this.born ? this.born.toISOString() : undefined;\r\n data[\"sex\"] = this.sex !== undefined ? this.sex : undefined;\r\n data[\"receiveNewsletterPhone\"] = this.receiveNewsletterPhone !== undefined ? this.receiveNewsletterPhone : undefined;\r\n data[\"receiveNewsletterMail\"] = this.receiveNewsletterMail !== undefined ? this.receiveNewsletterMail : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebUserChangeable(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class WebUser extends WebUserChangeable {\r\n subscriptionType: PaymentType | undefined;\r\n devices: WebDevice[] | null | undefined;\r\n events: WebEventHistory[] | null | undefined;\r\n smsBalance: number | undefined;\r\n smsSent: number | undefined;\r\n paymentCardNumber: string | null | undefined;\r\n payments: WebPayment[] | null | undefined;\r\n\r\n constructor(data?: any) {\r\n super(data);\r\n if (data !== undefined) {\r\n this.subscriptionType = data[\"subscriptionType\"] !== undefined ? data[\"subscriptionType\"] : undefined;\r\n if (data[\"devices\"] && data[\"devices\"].constructor === Array) {\r\n this.devices = [];\r\n for (let item of data[\"devices\"])\r\n this.devices.push(WebDevice.fromJS(item));\r\n }\r\n if (data[\"events\"] && data[\"events\"].constructor === Array) {\r\n this.events = [];\r\n for (let item of data[\"events\"])\r\n this.events.push(WebEventHistory.fromJS(item));\r\n }\r\n this.smsBalance = data[\"smsBalance\"] !== undefined ? data[\"smsBalance\"] : undefined;\r\n this.smsSent = data[\"smsSent\"] !== undefined ? data[\"smsSent\"] : undefined;\r\n this.paymentCardNumber = data[\"paymentCardNumber\"] !== undefined ? data[\"paymentCardNumber\"] : undefined;\r\n if (data[\"payments\"] && data[\"payments\"].constructor === Array) {\r\n this.payments = [];\r\n for (let item of data[\"payments\"])\r\n this.payments.push(WebPayment.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebUser {\r\n return new WebUser(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"subscriptionType\"] = this.subscriptionType !== undefined ? this.subscriptionType : undefined;\r\n if (this.devices && this.devices.constructor === Array) {\r\n data[\"devices\"] = [];\r\n for (let item of this.devices)\r\n data[\"devices\"].push(item.toJS());\r\n }\r\n if (this.events && this.events.constructor === Array) {\r\n data[\"events\"] = [];\r\n for (let item of this.events)\r\n data[\"events\"].push(item.toJS());\r\n }\r\n data[\"smsBalance\"] = this.smsBalance !== undefined ? this.smsBalance : undefined;\r\n data[\"smsSent\"] = this.smsSent !== undefined ? this.smsSent : undefined;\r\n data[\"paymentCardNumber\"] = this.paymentCardNumber !== undefined ? this.paymentCardNumber : undefined;\r\n if (this.payments && this.payments.constructor === Array) {\r\n data[\"payments\"] = [];\r\n for (let item of this.payments)\r\n data[\"payments\"].push(item.toJS());\r\n }\r\n super.toJS(data);\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebUser(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum PaymentType {\r\n None = 0,\r\n Stripe = 1,\r\n }\r\n\r\n export class WebDevice {\r\n imei: number | undefined;\r\n name: string | null | undefined;\r\n notificationLow: number | undefined;\r\n notificationHigh: number | undefined;\r\n notificationEmail: string | null | undefined;\r\n notificationPhoneNumber: string | null | undefined;\r\n isActive: boolean | undefined;\r\n expirationDate: Date | undefined;\r\n hasSubscription: boolean | undefined;\r\n subscription: WebSubscription | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.imei = data[\"imei\"] !== undefined ? data[\"imei\"] : undefined;\r\n this.name = data[\"name\"] !== undefined ? data[\"name\"] : undefined;\r\n this.notificationLow = data[\"notificationLow\"] !== undefined ? data[\"notificationLow\"] : undefined;\r\n this.notificationHigh = data[\"notificationHigh\"] !== undefined ? data[\"notificationHigh\"] : undefined;\r\n this.notificationEmail = data[\"notificationEmail\"] !== undefined ? data[\"notificationEmail\"] : undefined;\r\n this.notificationPhoneNumber = data[\"notificationPhoneNumber\"] !== undefined ? data[\"notificationPhoneNumber\"] : undefined;\r\n this.isActive = data[\"isActive\"] !== undefined ? data[\"isActive\"] : undefined;\r\n this.expirationDate = data[\"expirationDate\"] ? new Date(data[\"expirationDate\"].toString()) : undefined;\r\n this.hasSubscription = data[\"hasSubscription\"] !== undefined ? data[\"hasSubscription\"] : undefined;\r\n this.subscription = data[\"subscription\"] ? WebSubscription.fromJS(data[\"subscription\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebDevice {\r\n return new WebDevice(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"imei\"] = this.imei !== undefined ? this.imei : undefined;\r\n data[\"name\"] = this.name !== undefined ? this.name : undefined;\r\n data[\"notificationLow\"] = this.notificationLow !== undefined ? this.notificationLow : undefined;\r\n data[\"notificationHigh\"] = this.notificationHigh !== undefined ? this.notificationHigh : undefined;\r\n data[\"notificationEmail\"] = this.notificationEmail !== undefined ? this.notificationEmail : undefined;\r\n data[\"notificationPhoneNumber\"] = this.notificationPhoneNumber !== undefined ? this.notificationPhoneNumber : undefined;\r\n data[\"isActive\"] = this.isActive !== undefined ? this.isActive : undefined;\r\n data[\"expirationDate\"] = this.expirationDate ? this.expirationDate.toISOString() : undefined;\r\n data[\"hasSubscription\"] = this.hasSubscription !== undefined ? this.hasSubscription : undefined;\r\n data[\"subscription\"] = this.subscription ? this.subscription.toJS() : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebDevice(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class WebSubscription {\r\n subscriptionID: string | null | undefined;\r\n imei: number | undefined;\r\n subscriptionType: PaymentType | undefined;\r\n renewalDate: Date | undefined;\r\n created: Date | undefined;\r\n price: number | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.subscriptionID = data[\"subscriptionID\"] !== undefined ? data[\"subscriptionID\"] : undefined;\r\n this.imei = data[\"imei\"] !== undefined ? data[\"imei\"] : undefined;\r\n this.subscriptionType = data[\"subscriptionType\"] !== undefined ? data[\"subscriptionType\"] : undefined;\r\n this.renewalDate = data[\"renewalDate\"] ? new Date(data[\"renewalDate\"].toString()) : undefined;\r\n this.created = data[\"created\"] ? new Date(data[\"created\"].toString()) : undefined;\r\n this.price = data[\"price\"] !== undefined ? data[\"price\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebSubscription {\r\n return new WebSubscription(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"subscriptionID\"] = this.subscriptionID !== undefined ? this.subscriptionID : undefined;\r\n data[\"imei\"] = this.imei !== undefined ? this.imei : undefined;\r\n data[\"subscriptionType\"] = this.subscriptionType !== undefined ? this.subscriptionType : undefined;\r\n data[\"renewalDate\"] = this.renewalDate ? this.renewalDate.toISOString() : undefined;\r\n data[\"created\"] = this.created ? this.created.toISOString() : undefined;\r\n data[\"price\"] = this.price !== undefined ? this.price : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebSubscription(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class WebEventHistory {\r\n userID: number | undefined;\r\n eventType: EventHistoryType | undefined;\r\n eventDate: Date | undefined;\r\n data: string | null | undefined;\r\n eventFrom: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.userID = data[\"userID\"] !== undefined ? data[\"userID\"] : undefined;\r\n this.eventType = data[\"eventType\"] !== undefined ? data[\"eventType\"] : undefined;\r\n this.eventDate = data[\"eventDate\"] ? new Date(data[\"eventDate\"].toString()) : undefined;\r\n this.data = data[\"data\"] !== undefined ? data[\"data\"] : undefined;\r\n this.eventFrom = data[\"eventFrom\"] !== undefined ? data[\"eventFrom\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebEventHistory {\r\n return new WebEventHistory(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"userID\"] = this.userID !== undefined ? this.userID : undefined;\r\n data[\"eventType\"] = this.eventType !== undefined ? this.eventType : undefined;\r\n data[\"eventDate\"] = this.eventDate ? this.eventDate.toISOString() : undefined;\r\n data[\"data\"] = this.data !== undefined ? this.data : undefined;\r\n data[\"eventFrom\"] = this.eventFrom !== undefined ? this.eventFrom : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebEventHistory(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum EventHistoryType {\r\n ConcentReceiveMailChange = 0,\r\n ConcentReceivePhoneChange = 1,\r\n ConcentMailAddressChange = 2,\r\n ConcentPhoneNumberChange = 3,\r\n StripeCustomerCreated = 4,\r\n StripeCardChanged = 5,\r\n StripeReceivePayment = 6,\r\n StripeAddDeviceSubscription = 7,\r\n StripeRemoveDeviceSubscription = 8,\r\n StripeCharge = 9,\r\n ActivateDevice = 10,\r\n DeactivateDevice = 11,\r\n }\r\n\r\n export class WebPayment {\r\n id: number | undefined;\r\n product: Product | undefined;\r\n totalSum: number | undefined;\r\n amount: number | undefined;\r\n paymentType: PaymentType | undefined;\r\n isPaymentCompleted: boolean | undefined;\r\n purchaseTime: Date | undefined;\r\n paymentReceivedTime: Date | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.id = data[\"id\"] !== undefined ? data[\"id\"] : undefined;\r\n this.product = data[\"product\"] !== undefined ? data[\"product\"] : undefined;\r\n this.totalSum = data[\"totalSum\"] !== undefined ? data[\"totalSum\"] : undefined;\r\n this.amount = data[\"amount\"] !== undefined ? data[\"amount\"] : undefined;\r\n this.paymentType = data[\"paymentType\"] !== undefined ? data[\"paymentType\"] : undefined;\r\n this.isPaymentCompleted = data[\"isPaymentCompleted\"] !== undefined ? data[\"isPaymentCompleted\"] : undefined;\r\n this.purchaseTime = data[\"purchaseTime\"] ? new Date(data[\"purchaseTime\"].toString()) : undefined;\r\n this.paymentReceivedTime = data[\"paymentReceivedTime\"] ? new Date(data[\"paymentReceivedTime\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebPayment {\r\n return new WebPayment(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"id\"] = this.id !== undefined ? this.id : undefined;\r\n data[\"product\"] = this.product !== undefined ? this.product : undefined;\r\n data[\"totalSum\"] = this.totalSum !== undefined ? this.totalSum : undefined;\r\n data[\"amount\"] = this.amount !== undefined ? this.amount : undefined;\r\n data[\"paymentType\"] = this.paymentType !== undefined ? this.paymentType : undefined;\r\n data[\"isPaymentCompleted\"] = this.isPaymentCompleted !== undefined ? this.isPaymentCompleted : undefined;\r\n data[\"purchaseTime\"] = this.purchaseTime ? this.purchaseTime.toISOString() : undefined;\r\n data[\"paymentReceivedTime\"] = this.paymentReceivedTime ? this.paymentReceivedTime.toISOString() : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebPayment(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum Product {\r\n SmsPackage = 0,\r\n StripeSubscription = 1,\r\n }\r\n\r\n export enum Sex {\r\n Male = 0,\r\n Female = 1,\r\n }\r\n\r\n export class WebError {\r\n error: ErrorType | undefined;\r\n message: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.error = data[\"error\"] !== undefined ? data[\"error\"] : undefined;\r\n this.message = data[\"message\"] !== undefined ? data[\"message\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebError {\r\n return new WebError(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"error\"] = this.error !== undefined ? this.error : undefined;\r\n data[\"message\"] = this.message !== undefined ? this.message : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebError(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum ErrorType {\r\n LoginWrongPasswordOrUsername = 0,\r\n Other = 1,\r\n Exception = 2,\r\n Ok = 3,\r\n }\r\n\r\n export class WebUserRegisterInfo {\r\n email: string | null | undefined;\r\n name: string | null | undefined;\r\n password: string | null | undefined;\r\n imei: number | undefined;\r\n stripeToken: string | null | undefined;\r\n paymentMethodId: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.email = data[\"email\"] !== undefined ? data[\"email\"] : undefined;\r\n this.name = data[\"name\"] !== undefined ? data[\"name\"] : undefined;\r\n this.password = data[\"password\"] !== undefined ? data[\"password\"] : undefined;\r\n this.imei = data[\"imei\"] !== undefined ? data[\"imei\"] : undefined;\r\n this.stripeToken = data[\"stripeToken\"] !== undefined ? data[\"stripeToken\"] : undefined;\r\n this.paymentMethodId = data[\"paymentMethodId\"] !== undefined ? data[\"paymentMethodId\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebUserRegisterInfo {\r\n return new WebUserRegisterInfo(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"email\"] = this.email !== undefined ? this.email : undefined;\r\n data[\"name\"] = this.name !== undefined ? this.name : undefined;\r\n data[\"password\"] = this.password !== undefined ? this.password : undefined;\r\n data[\"imei\"] = this.imei !== undefined ? this.imei : undefined;\r\n data[\"stripeToken\"] = this.stripeToken !== undefined ? this.stripeToken : undefined;\r\n data[\"paymentMethodId\"] = this.paymentMethodId !== undefined ? this.paymentMethodId: undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebUserRegisterInfo(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class ChangePassword {\r\n oldPassword: string | null | undefined;\r\n newPassword: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.oldPassword = data[\"oldPassword\"] !== undefined ? data[\"oldPassword\"] : undefined;\r\n this.newPassword = data[\"newPassword\"] !== undefined ? data[\"newPassword\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ChangePassword {\r\n return new ChangePassword(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"oldPassword\"] = this.oldPassword !== undefined ? this.oldPassword : undefined;\r\n data[\"newPassword\"] = this.newPassword !== undefined ? this.newPassword : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new ChangePassword(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class ResetPassword {\r\n email: string | null | undefined;\r\n newPassword: string | null | undefined;\r\n resetGuid: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.email = data[\"email\"] !== undefined ? data[\"email\"] : undefined;\r\n this.newPassword = data[\"newPassword\"] !== undefined ? data[\"newPassword\"] : undefined;\r\n this.resetGuid = data[\"resetGuid\"] !== undefined ? data[\"resetGuid\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): ResetPassword {\r\n return new ResetPassword(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"email\"] = this.email !== undefined ? this.email : undefined;\r\n data[\"newPassword\"] = this.newPassword !== undefined ? this.newPassword : undefined;\r\n data[\"resetGuid\"] = this.resetGuid !== undefined ? this.resetGuid : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new ResetPassword(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class ValueType {\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n }\r\n }\r\n\r\n static fromJS(data: any): ValueType {\r\n return new ValueType(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new ValueType(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class Token extends ValueType {\r\n access_token: string | null | undefined;\r\n expires_in: number | undefined;\r\n\r\n constructor(data?: any) {\r\n super(data);\r\n if (data !== undefined) {\r\n this.access_token = data[\"access_token\"] !== undefined ? data[\"access_token\"] : undefined;\r\n this.expires_in = data[\"expires_in\"] !== undefined ? data[\"expires_in\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): Token {\r\n return new Token(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"access_token\"] = this.access_token !== undefined ? this.access_token : undefined;\r\n data[\"expires_in\"] = this.expires_in !== undefined ? this.expires_in : undefined;\r\n super.toJS(data);\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new Token(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class GetMeasurementsResponse {\r\n measurementList: MeasurementDTO[] | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n if (data[\"measurementList\"] && data[\"measurementList\"].constructor === Array) {\r\n this.measurementList = [];\r\n for (let item of data[\"measurementList\"])\r\n this.measurementList.push(MeasurementDTO.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetMeasurementsResponse {\r\n return new GetMeasurementsResponse(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n if (this.measurementList && this.measurementList.constructor === Array) {\r\n data[\"measurementList\"] = [];\r\n for (let item of this.measurementList)\r\n data[\"measurementList\"].push(item.toJS());\r\n }\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new GetMeasurementsResponse(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class MeasurementDTO {\r\n imei: string | null | undefined;\r\n geoLocation: GeoLocation | null | undefined;\r\n voltage1: number | undefined;\r\n temp: number | undefined;\r\n created: Date | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.imei = data[\"imei\"] !== undefined ? data[\"imei\"] : undefined;\r\n this.geoLocation = data[\"geoLocation\"] ? GeoLocation.fromJS(data[\"geoLocation\"]) : undefined;\r\n this.voltage1 = data[\"voltage1\"] !== undefined ? data[\"voltage1\"] : undefined;\r\n this.temp = data[\"temp\"] !== undefined ? data[\"temp\"] : undefined;\r\n this.created = data[\"created\"] ? new Date(data[\"created\"].toString()) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): MeasurementDTO {\r\n return new MeasurementDTO(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"imei\"] = this.imei !== undefined ? this.imei : undefined;\r\n data[\"geoLocation\"] = this.geoLocation ? this.geoLocation.toJS() : undefined;\r\n data[\"voltage1\"] = this.voltage1 !== undefined ? this.voltage1 : undefined;\r\n data[\"temp\"] = this.temp !== undefined ? this.temp : undefined;\r\n data[\"created\"] = this.created ? this.created.toISOString() : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new MeasurementDTO(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class GeoLocation {\r\n longitude: number | undefined;\r\n latitude: number | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.longitude = data[\"longitude\"] !== undefined ? data[\"longitude\"] : undefined;\r\n this.latitude = data[\"latitude\"] !== undefined ? data[\"latitude\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): GeoLocation {\r\n return new GeoLocation(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"longitude\"] = this.longitude !== undefined ? this.longitude : undefined;\r\n data[\"latitude\"] = this.latitude !== undefined ? this.latitude : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new GeoLocation(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class WebBatteryType {\r\n id: number | undefined;\r\n name: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.id = data[\"id\"] !== undefined ? data[\"id\"] : undefined;\r\n this.name = data[\"name\"] !== undefined ? data[\"name\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebBatteryType {\r\n return new WebBatteryType(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"id\"] = this.id !== undefined ? this.id : undefined;\r\n data[\"name\"] = this.name !== undefined ? this.name : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebBatteryType(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class GetTriggerResponse {\r\n responseStatusCode: HttpStatusCode | undefined;\r\n triggers: Trigger[] | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.responseStatusCode = data[\"responseStatusCode\"] !== undefined ? data[\"responseStatusCode\"] : undefined;\r\n if (data[\"triggers\"] && data[\"triggers\"].constructor === Array) {\r\n this.triggers = [];\r\n for (let item of data[\"triggers\"])\r\n this.triggers.push(Trigger.fromJS(item));\r\n }\r\n }\r\n }\r\n\r\n static fromJS(data: any): GetTriggerResponse {\r\n return new GetTriggerResponse(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"responseStatusCode\"] = this.responseStatusCode !== undefined ? this.responseStatusCode : undefined;\r\n if (this.triggers && this.triggers.constructor === Array) {\r\n data[\"triggers\"] = [];\r\n for (let item of this.triggers)\r\n data[\"triggers\"].push(item.toJS());\r\n }\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new GetTriggerResponse(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum HttpStatusCode {\r\n Continue = 100,\r\n SwitchingProtocols = 101,\r\n OK = 200,\r\n Created = 201,\r\n Accepted = 202,\r\n NonAuthoritativeInformation = 203,\r\n NoContent = 204,\r\n ResetContent = 205,\r\n PartialContent = 206,\r\n MultipleChoices = 300,\r\n Ambiguous = 300,\r\n MovedPermanently = 301,\r\n Moved = 301,\r\n Found = 302,\r\n Redirect = 302,\r\n SeeOther = 303,\r\n RedirectMethod = 303,\r\n NotModified = 304,\r\n UseProxy = 305,\r\n Unused = 306,\r\n TemporaryRedirect = 307,\r\n RedirectKeepVerb = 307,\r\n BadRequest = 400,\r\n Unauthorized = 401,\r\n PaymentRequired = 402,\r\n Forbidden = 403,\r\n NotFound = 404,\r\n MethodNotAllowed = 405,\r\n NotAcceptable = 406,\r\n ProxyAuthenticationRequired = 407,\r\n RequestTimeout = 408,\r\n Conflict = 409,\r\n Gone = 410,\r\n LengthRequired = 411,\r\n PreconditionFailed = 412,\r\n RequestEntityTooLarge = 413,\r\n RequestUriTooLong = 414,\r\n UnsupportedMediaType = 415,\r\n RequestedRangeNotSatisfiable = 416,\r\n ExpectationFailed = 417,\r\n UpgradeRequired = 426,\r\n InternalServerError = 500,\r\n NotImplemented = 501,\r\n BadGateway = 502,\r\n ServiceUnavailable = 503,\r\n GatewayTimeout = 504,\r\n HttpVersionNotSupported = 505,\r\n }\r\n\r\n export class Trigger {\r\n id: number | undefined;\r\n unitId: string | null | undefined;\r\n unitName: string | null | undefined;\r\n triggerType: string | null | undefined;\r\n emailAddress: string | null | undefined;\r\n phoneNumber: string | null | undefined;\r\n minValue: number | undefined;\r\n maxValue: number | undefined;\r\n valueSuffix: string | null | undefined;\r\n action: ActionType | undefined;\r\n webHookUrl: string | null | undefined;\r\n language: string | null | undefined;\r\n isEnabled: boolean | undefined;\r\n\r\n useCustomNotification: boolean | undefined;\r\n customNotificationText: string | null | undefined;\r\n showValueInCustomNotification: boolean | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.id = data[\"id\"] !== undefined ? data[\"id\"] : undefined;\r\n this.unitId = data[\"unitId\"] !== undefined ? data[\"unitId\"] : undefined;\r\n this.unitName = data[\"unitName\"] !== undefined ? data[\"unitName\"] : undefined;\r\n this.triggerType = data[\"triggerType\"] !== undefined ? data[\"triggerType\"] : undefined;\r\n this.emailAddress = data[\"emailAddress\"] !== undefined ? data[\"emailAddress\"] : undefined;\r\n this.phoneNumber = data[\"phoneNumber\"] !== undefined ? data[\"phoneNumber\"] : undefined;\r\n this.minValue = data[\"minValue\"] !== undefined ? data[\"minValue\"] : undefined;\r\n this.maxValue = data[\"maxValue\"] !== undefined ? data[\"maxValue\"] : undefined;\r\n this.valueSuffix = data[\"valueSuffix\"] !== undefined ? data[\"valueSuffix\"] : undefined;\r\n this.action = data[\"action\"] !== undefined ? data[\"action\"] : undefined;\r\n this.webHookUrl = data[\"webHookUrl\"] !== undefined ? data[\"webHookUrl\"] : undefined;\r\n this.language = data[\"language\"] !== undefined ? data[\"language\"] : undefined;\r\n this.isEnabled = data[\"isEnabled\"] !== undefined ? data[\"isEnabled\"] : undefined;\r\n\r\n this.useCustomNotification = data[\"useCustomNotification\"] !== undefined ? data[\"useCustomNotification\"] : undefined;\r\n this.customNotificationText = data[\"customNotificationText\"] !== undefined ? data[\"customNotificationText\"] : undefined;\r\n this.showValueInCustomNotification = data[\"showValueInCustomNotification\"] !== undefined ? data[\"showValueInCustomNotification\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): Trigger {\r\n return new Trigger(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"id\"] = this.id !== undefined ? this.id : undefined;\r\n data[\"unitId\"] = this.unitId !== undefined ? this.unitId : undefined;\r\n data[\"unitName\"] = this.unitName !== undefined ? this.unitName : undefined;\r\n data[\"triggerType\"] = this.triggerType !== undefined ? this.triggerType : undefined;\r\n data[\"emailAddress\"] = this.emailAddress !== undefined ? this.emailAddress : undefined;\r\n data[\"phoneNumber\"] = this.phoneNumber !== undefined ? this.phoneNumber : undefined;\r\n data[\"minValue\"] = this.minValue !== undefined ? this.minValue : undefined;\r\n data[\"maxValue\"] = this.maxValue !== undefined ? this.maxValue : undefined;\r\n data[\"valueSuffix\"] = this.valueSuffix !== undefined ? this.valueSuffix : undefined;\r\n data[\"action\"] = this.action !== undefined ? this.action : undefined;\r\n data[\"webHookUrl\"] = this.webHookUrl !== undefined ? this.webHookUrl : undefined;\r\n data[\"language\"] = this.language !== undefined ? this.language : undefined;\r\n data[\"isEnabled\"] = this.isEnabled !== undefined ? this.isEnabled : undefined;\r\n\r\n data[\"useCustomNotification\"] = this.useCustomNotification !== undefined ? this.useCustomNotification : undefined;\r\n data[\"customNotificationText\"] = this.customNotificationText !== undefined ? this.customNotificationText : undefined;\r\n data[\"showValueInCustomNotification\"] = this.showValueInCustomNotification !== undefined ? this.showValueInCustomNotification : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new Trigger(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum ActionType {\r\n None = 0,\r\n Mail = 1,\r\n Sms = 2,\r\n }\r\n\r\n export class PutTriggerResponse {\r\n responseStatusCode: HttpStatusCode | undefined;\r\n trigger: Trigger | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.responseStatusCode = data[\"responseStatusCode\"] !== undefined ? data[\"responseStatusCode\"] : undefined;\r\n this.trigger = data[\"trigger\"] ? Trigger.fromJS(data[\"trigger\"]) : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PutTriggerResponse {\r\n return new PutTriggerResponse(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"responseStatusCode\"] = this.responseStatusCode !== undefined ? this.responseStatusCode : undefined;\r\n data[\"trigger\"] = this.trigger ? this.trigger.toJS() : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new PutTriggerResponse(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class DeleteTriggerResponse {\r\n responseStatusCode: HttpStatusCode | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.responseStatusCode = data[\"responseStatusCode\"] !== undefined ? data[\"responseStatusCode\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): DeleteTriggerResponse {\r\n return new DeleteTriggerResponse(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"responseStatusCode\"] = this.responseStatusCode !== undefined ? this.responseStatusCode : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new DeleteTriggerResponse(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class TriggerEvent {\r\n trigger: Trigger | null | undefined;\r\n triggerValue: number | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.trigger = data[\"trigger\"] ? Trigger.fromJS(data[\"trigger\"]) : undefined;\r\n this.triggerValue = data[\"triggerValue\"] !== undefined ? data[\"triggerValue\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): TriggerEvent {\r\n return new TriggerEvent(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"trigger\"] = this.trigger ? this.trigger.toJS() : undefined;\r\n data[\"triggerValue\"] = this.triggerValue !== undefined ? this.triggerValue : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new TriggerEvent(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class WebPurchase {\r\n product: Product | undefined;\r\n amount: number | undefined;\r\n paymentIntentId: string | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.product = data[\"product\"] !== undefined ? data[\"product\"] : undefined;\r\n this.amount = data[\"amount\"] !== undefined ? data[\"amount\"] : undefined;\r\n this.paymentIntentId = data[\"paymentIntentId\"] !== undefined ? data[\"paymentIntentId\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebPurchase {\r\n return new WebPurchase(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"product\"] = this.product !== undefined ? this.product : undefined;\r\n data[\"amount\"] = this.amount !== undefined ? this.amount : undefined;\r\n data[\"paymentIntentId\"] = this.paymentIntentId !== undefined ? this.paymentIntentId : undefined\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebPurchase(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class PaymentIntentResult {\r\n status: PaymentIntentStatus | undefined;\r\n clientSecret: string | undefined;\r\n paymentMethodId: string | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.status = data[\"status\"] !== undefined ? data[\"status\"] : undefined;\r\n this.clientSecret = data[\"clientSecret\"] !== undefined ? data[\"clientSecret\"] : undefined;\r\n this.paymentMethodId = data[\"paymentMethodId\"] !== undefined ? data[\"paymentMethodId\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): PaymentIntentResult {\r\n return new PaymentIntentResult(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"status\"] = this.status !== undefined ? this.status : undefined;\r\n data[\"clientSecret\"] = this.clientSecret !== undefined ? this.clientSecret : undefined;\r\n data[\"paymentMethodId\"] = this.paymentMethodId !== undefined ? this.paymentMethodId : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new PaymentIntentResult(JSON.parse(json));\r\n }\r\n }\r\n\r\n export enum PaymentIntentStatus {\r\n Success = 1,\r\n RequiresAction = 2,\r\n Failed = 3\r\n }\r\n\r\n export class WebStartRecurringResult {\r\n isDeviceDeleted: boolean | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.isDeviceDeleted = data[\"isDeviceDeleted\"] !== undefined ? data[\"isDeviceDeleted\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): WebStartRecurringResult {\r\n return new WebStartRecurringResult(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"isDeviceDeleted\"] = this.isDeviceDeleted !== undefined ? this.isDeviceDeleted : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new WebStartRecurringResult(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class StripeCardData {\r\n token: string | null | undefined;\r\n\r\n constructor(data?: any) {\r\n if (data !== undefined) {\r\n this.token = data[\"token\"] !== undefined ? data[\"token\"] : undefined;\r\n }\r\n }\r\n\r\n static fromJS(data: any): StripeCardData {\r\n return new StripeCardData(data);\r\n }\r\n\r\n toJS(data?: any) {\r\n data = data === undefined ? {} : data;\r\n data[\"token\"] = this.token !== undefined ? this.token : undefined;\r\n return data;\r\n }\r\n\r\n toJSON() {\r\n return JSON.stringify(this.toJS());\r\n }\r\n\r\n clone() {\r\n const json = this.toJSON();\r\n return new StripeCardData(JSON.parse(json));\r\n }\r\n }\r\n\r\n export class SwaggerException extends Error {\r\n message: string;\r\n status: number;\r\n response: string;\r\n result: any;\r\n\r\n constructor(message: string, status: number, response: string, 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.result = result;\r\n }\r\n }\r\n\r\n\r\n export var customerAPI = new CustomerAPI.AccountClient(CustomerAPIUrl);\r\n export var deviceAPI = new CustomerAPI.DevicesClient(CustomerAPIUrl);\r\n export var subscriptionsAPI = new CustomerAPI.SubscriptionsClient(CustomerAPIUrl);\r\n export var notificationService = new CustomerAPI.NotificationServiceClient(CustomerAPIUrl);\r\n export var paymentAPI = new CustomerAPI.PaymentClient(CustomerAPIUrl);\r\n\r\n export function IsLoggedIn(): boolean {\r\n var tokenExpiration = parseInt(localStorage.getItem(\"loginTokenExpiration\"));\r\n if (tokenExpiration == undefined || tokenExpiration == null || isNaN(tokenExpiration) || tokenExpiration < new Date().getTime())\r\n return false;\r\n else {\r\n localStorage.setItem(\"loginTokenExpiration\", undefined);\r\n return true;\r\n }\r\n }\r\n export function login(username: string, password: string, onSuccess?: () => void, onFail?: (exception: string, reason: string) => void) {\r\n jQuery.ajax({\r\n crossDomain: true,\r\n url: CustomerAPIUrl + \"/api/users/login\",\r\n method: \"POST\",\r\n headers: {\r\n \"content-type\": \"application/x-www-form-urlencoded\",\r\n \"cache-control\": \"no-cache\",\r\n \"x-language\": localizer.LangShortCode,\r\n },\r\n data: {\r\n \"username\": username,\r\n \"password\": password\r\n }\r\n }).done(function (response) {\r\n localStorage.setItem(\"loginToken\", response.access_token);\r\n localStorage.setItem(\"loginTokenExpiration\", (new Date().getTime() + (response.expires_in * 1000)).toString());\r\n onSuccess();\r\n }).fail((xhr) => { if (onFail !== undefined) onFail(xhr.status, xhr.responseText); });\r\n }\r\n\r\n export function RefreshToken(onSuccess?: () => void, onFail?: (exception: string, reason: string) => void) {\r\n customerAPI.renewToken(token => {\r\n localStorage.setItem(\"loginToken\", token.access_token);\r\n localStorage.setItem(\"loginTokenExpiration\", (new Date().getTime() + (token.expires_in * 1000)).toString());\r\n onSuccess();\r\n }, (exception, reason) => { if (onFail !== undefined) onFail(exception, reason); });\r\n }\r\n}"]}