{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue?aef3","webpack:////home/runner/work/prototype/prototype/node_modules/moment/locale sync ^\\.\\/.*$","webpack:///./src/assets/csk_logo.png","webpack:///./src/api.client.ts","webpack:///./src/components/Toaster/Toasts.vue?19e2","webpack:///./src/App.vue?df08","webpack:///./src/store/weeklyPlan.ts","webpack:///./src/store/index.ts","webpack:///./src/router/index.ts","webpack:///./src/App.vue","webpack:///./src/App.vue?acc4","webpack:///./src/App.vue?1d40","webpack:///./src/plugins/vuetify.ts","webpack:///./src/components/Toaster/Toast.vue?bc7b","webpack:///./src/components/Toaster/Toast.vue","webpack:///./src/components/Toaster/Toast.vue?de73","webpack:///./src/components/Toaster/Toast.vue?d854","webpack:///./src/components/Toaster/Toasts.vue?c166","webpack:///./src/components/Toaster/Toasts.vue","webpack:///./src/components/Toaster/Toasts.vue?532e","webpack:///./src/components/Toaster/Toasts.vue?86b9","webpack:///./src/main.ts","webpack:///./src/components/Toaster/Toast.vue?04f9"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","map","webpackContext","req","id","webpackContextResolve","keys","AssigneeTypeEnum","AssigneeClient","baseUrl","instance","jsonParseReviver","this","a","planTemplateID","cancelToken","url_","encodeURIComponent","replace","options_","method","url","headers","catch","_error","isAxiosError","response","_response","processGetAssigneesForPlanTemplate","status","_headers","k","_responseText","result200","resultData200","Array","isArray","item","AssigneeModel","fromJS","throwException","weeklyPlanTeamSessionID","processGetAssigneesForWeeklyPlanTeamSession","weeklyPlanID","processGetAssigneesForWeeklyPlan","BookingClient","processGetBooking","BookingModel","departmentID","fromDate","toDate","processGetBookingsForDepartment","bookingModel","content_","JSON","stringify","processAddBooking","title","bookingDate","bookingStartTime","bookingEndTime","playingFieldID","comments","processUpdateBooking","processDeleteBooking","ClubClient","processGetAll","ClubModel","processGetClub","clubID","processGetClubByID","clubModel","processAddClub","processUpdateClub","processGetActivitySummary","ActivitySummaryModel","DepartmentClient","departmentModel","processAddDepartment","processGetDepartment","DepartmentModel","processGetDepartmentsForClub","processGetDepartmentsInSameRegionAsPlayingField","userID","processGetDepartmentCandidatesForUserMembership","processGetSports","SportModel","DepartmentPlayingFieldClient","departmentPlayingFieldId","processGetExternalPlayingFieldSessions","DepartmentPlayingFieldSessionModel","processGetExternalPlayingFieldSession","departmentPlayingFieldID","weekdayEnum","startTime","endTime","processAddExternalPlayingFieldSession","processUpdateExternalPlayingFieldSession","processDeleteExternalPlayingFieldSession","FieldPlannerClient","processGetDailySummariesForWeeklyPlan","DailySummaryModel","processGetFieldEventsForWeeklyPlan","FieldEventModel","processGetDatesForWeeklyPlan","periodEnum","processGetCalendarEventsForPlanTemplate","WeeklyCalendarEventModel","mainPlayingFieldID","processGetCalenderEventsForWeeklyPlan","dateInWeek","processGetCalendarEventsInWeek","GenderClient","GenderModel","MatchClient","matchNumber","matchDate","matchTime","seasonID","homeTeamName","awayTeamName","processAddTournamentMatch","playingFieldId","processUpdateTournamentMatch","processGetTournamentMatch","TournamentMatchModel","processGetTournamentMatchesForWeeklyPlan","tournamentTeamId","processGetTournamentMatchesForTournamentTeam","assigneeType","assigneeGuid","processGetTournamentMatchesForAssignee","processGetTournamentAwayMatchesForWeeklyPlan","processGetTournamentMatchesForDepartment","teamID","processGetTournamentMatchesForTeam","processGetRescheduledTournamentMatchesForDepartment","processGetRescheduledTournamentMatchesForTeam","processGetReschedulerCandidateList","DropDownModel","tournamentMatchID","rescheduledByEnum","processUpdateRescheduledTournamentMatch","PlanTemplateClient","processGetPlanTemplate","PlanTemplateModel","processGetPlanTemplatesForClub","processGetPlanTemplatesForDepartment","processGetCurrentPlanTemplateForDepartment","processGetNextPlanTemplateForDepartment","processGetPlanTemplateForWeeklyPlan","planTemplateModel","processAddPlanTemplate","processUpdatePlanTemplate","startDate","endDate","processInputIsValid","processInputForNewPlanTemplateIsValid","processGetWeekdays","WeekdayModel","weekday","processGetConflictsForPlayingField","EventModel","PlanTemplateSessionClient","assigneeID","assigneeTypeID","applyForWeeklyPlans","processAddPlanTemplateTeamSession","processGetPlanTemplateTeamSession","PlanTemplateSessionModel","processGetPlanTemplateSessions","processGetPlanTemplateSessionsForPlanTemplate","processGetPlanTemplateSessionsForTeam","processGetPlanTemplateSessionsForTeamByPlanTemplate","newPlanTemplateTeamSessionModel","processUpdatePlanTemplateTeamSession","processDeletePlanTemplateTeamSession","PlanTemplateTeamRequestClient","processGetPlanTemplateTeamRequestsForPlanTemplate","PlanTemplateTeamRequestModel","planTemplateTeamRequestID","processGetPlanTemplateTeamRequest","sessionCount","processAddPlanTemplateTeamRequest","processUpdatePlanTemplateTeamRequest","processDeletePlanTemplateTeamRequest","PlanTemplateTenantSessionClient","tenantID","processAddPlanTemplateTenantSession","processGetPlanTemplateTenantSession","PlanTemplateTenantSessionModel","model","processUpdatePlanTemplateTenantSession","processDeletePlanTemplateTenantSession","PlayingFieldClient","playingFieldModel","processAddPlayingField","processUpdatePlayingField","processGetPlayingField","PlayingFieldModel","processAssignPlayingFieldToDepartment","processGetMainPlayingFieldsForClub","processGetMainPlayingFieldsForDepartment","processGetPlayingFieldHierarchyForClub","trainingFacilityID","processGetPlayingFieldHierarchyForTrainingFacility","processGetPlayingFieldsForTrainingFacility","processGetPlayingFieldsByName","onlyActivePlayingFields","processGetPlayingFieldsAssignedToDepartment","AssignedPlayingFieldModel","processGetExternalPlayingFieldsAssignedToDepartment","processGetPlayingFieldAssignedToDepartment","processGetPlayingFieldsForDepartment","processGetExternalPlayingFieldsForDepartment","processGetPlayingFieldAssignedPeriods","processUpdateDepartmentPlayingField","processGetMainPlayingFieldsForTemplate","processGetMainPlayingFieldsForWeeklyPlan","processGetPlayingFieldForWeeklyPlan","processGetPlayingFieldsForPlanTemplate","processGetPlayingFieldsForWeeklyPlanTeamSession","rootPlayingFieldID","processGetPlayingFieldsForMainPlayingField","processGetSurfaces","SurfaceModel","processGetWeeklyPlanSessionsForPlayingField","WeeklyPlanSessionModel","RegionClient","processGetRegion","RegionModel","SeasonClient","seasonModel","processAddSeason","seasonId","processGetSeason","SeasonModel","processGetSeasonsForDepartment","processGetSeasonForWeeklyPlan","StatisticsClient","processGetDefaultDates","processGetMatchSummaryForPlayingField","MatchSummaryModel","TeamActivityClient","userId","weeklyPlanId","processGetWeeklyPlanActivitiesForUser","ActivityModel","TeamClient","processGetTeamByID","TeamModel","processGetTeamExtended","playerCount","genderEnum","backColor","processUpdateTeam","startYear","endYear","processAddTeam","yearOfBirth","processAddTeamWithoutTeamClasses","processAddTeamWithoutBirthYear","processGetTeamsForClub","processGetTeamsForDepartment","includeDummy","processGetTeamsForPlanTemplate","processGetTeamsForSeason","searchString","processGetFilteredTeamsForSeason","processGetFilteredTournamentTeamsForSeason","TournamentTeamModel","processGetTeamClass","TeamClassModel","processGetTeamClassesForTeam","teamClassModel","processUpdateTeamClass","externalID","processAddTournamentTeam","tournamentTeamID","processGetTournamentTeam","processGetTournamentTeams","teamId","processUpdateTournamentTeam","processGetTeamCandidatesForTournamentTeam","TenantClient","TenantModel","TrainingFacilityClient","trainingFacilityModel","processAddTrainingFacility","processUpdateTrainingFacility","processGetTrainingFacility","TrainingFacilityModel","filter","processGetFiltered","processGetTrainingFacilitiesForClub","UserClient","processGetUser","UserModel","azureID","processGetUserByAzureID","processGetUserRoles","UserRoleModel","processGetCurrentUserRole","processGetUserRolesForCurrentUser","processGetUserRolesByUserID","processGetUserTeamRolesByUserID","UserTeamModel","userRoleID","processGetUserRoleByID","processGetUserRoleList","processGetCurrentUser","processApplyMembershipForCurrentUser","userRoleEnum","updatedByUserID","processUpdateUserRole","processSetCurrentDepartment","WeeklyPlanClient","weeklyPlanModel","processUpdateWeeklyPlan","processGetWeeklyPlan","WeeklyPlanModel","processGetWeeklyPlansForDepartment","processGetConflictsForWeeklyPlan","WeeklyPlanConflictModel","processGetPeriods","processGetPreviousWeeklyPlan","processGetNextWeeklyPlan","processDeleteWeeklyPlan","processRecreateWeeklyPlan","processGetCurrentWeeklyPlanForDepartment","WeeklyPlanSessionClient","processGetWeeklyPlanSessions","processGetWeeklyPlanTeamSession","weeklyPlanTenantSessionID","processGetWeeklyPlanTenantSession","WeeklyPlanTenantSessionModel","processGetWeeklyPlanTeamSessionsForAssignee","processAddWeeklyPlanTeamSession","processAddWeeklyPlanTenantSession","processUpdateWeeklyPlanTeamSession","processUpdateWeeklyPlanTenantSession","processDeleteWeeklyPlanTeamSession","processDeleteWeeklyPlanTenantSession","_data","init","description","playingFieldName","regionName","trainingFieldName","fieldConditions","clubName","sportEnum","showNextTemplateOnFrontPage","weekdayName","start","end","events","toJSON","backgroundColor","weeklyEvents","calendarTimes","intervalCount","homeTeamID","awayTeamID","regStatusEnum","matchResult","isRescheduled","originalMatchDate","originalMatchTime","originalPlayingFieldName","rescheduledDateTime","rescheduledMatchComments","departmentName","period","calendarStartTime","calendarEndTime","calendarWeekendStartTime","calendarWeekendEndTime","defaultPlayingFieldID","isReady","eventTypeEnum","eventTypeName","eventID","eventName","planTemplateName","assigneType","assigneeName","assigneeStartYear","virtualStartDateTime","virtualEndDateTime","UserRoleEnumModel","teamName","teamStartYear","assignedSessionCount","parentID","fieldLength","fieldWidth","surfaceEnum","ownerDepartmentID","children","sessionDate","conflictsExist","regionID","parseZone","toString","toISOString","matchCount","matchSummaryItems","MatchSummaryItemModel","tournamentTeamCount","eventTypeID","activityType","activitySortDate","activityDate","timeInterval","conflict","seasonName","genderName","hasTeamClasses","playerCountDisabled","teamEndYear","classYear","className","userName","fullName","lastName","firstName","isLoggedOn","isApproved","userRoleEnumID","userRoleName","userFullName","createdDateTime","createdByUser","updatedDateTime","updatedByUser","lastAccessedDateTime","isAnonymous","allowPopulate","eventWeekday","eventStartTime","eventEndTime","conflictingEventTypeEnum","conflictingEventID","conflictingEventName","conflictingEventTypeName","conflictingEventStart","conflictingEventEnd","conflictingEventStartTime","conflictingEventEndTime","ApiException","isApiException","obj","_vm","_h","$createElement","_c","_self","attrs","staticClass","on","$event","logoClicked","_v","scopedSlots","_u","fn","ref","_g","slot","homeClicked","$store","state","adminClicked","_e","clubClicked","fieldPlanningClicked","userProfileClicked","aboutClicked","logOutClicked","currentUserIsLoggedOn","logInClicked","_s","staticRenderFns","weeklyPlanStore","selectedPlayingFieldId","selectedPeriodId","getters","mutations","actions","use","Store","Id","clubId","departmentId","userRoleEnumId","Applicant","isAdmin","isReader","isApplicant","isAuthorisedButNoRole","weeklyPlanSelectedPlayingFieldId","weeklyPlanSelectedPeriodId","toasts","currentUserIsApproved","ADD_TOAST","toast","CLEAR_TOAST","index","findIndex","x","Title","UPDATE_CURRENT_USER_NAME","UPDATE_CURRENT_CLUB_NAME","UPDATE_CURRENT_DEPARTMENT_NAME","UPDATE_CURRENT_DEPARTMENT_ID","UPDATE_CURRENT_CLUB_ID","UPDATE_CURRENT_USER_ROLE_ENUM_ID","UPDATE_SET_IS_ADMIN","UPDATE_SET_IS_READER","UPDATE_SET_IS_APPLICANT","UPDATE_SET_IS_AUTHORISED_BUT_NO_ROLE","UPDATE_WEEKLY_PLAN_SELECTED_PLAYING_FIELD_ID","UPDATE_WEEKLY_PLAN_SELECTED_PERIOD_ID","UPDATE_CURRENT_USER_IS_LOGGED_ON","UPDATE_CURRENT_USER_IS_APPROVED","addToast","context","commit","clearToast","setCurrentUser","setCurrentClubName","setCurrentDepartmentName","setCurrentDepartmentId","setCurrentClubId","setCurrentUserRoleEnumId","Admin","Reader","AuthorisedButNoRole","setCurrentUserIsLoggedOn","setCurrentUserIsApproved","setWeeklyPlanSelectedPlayingFieldId","setWeeklyPlanSelectedPeriodId","routes","path","component","props","router","extend","mounted","userClient","getCurrentUser","store","dispatch","methods","$router","location","VApp","VAppBar","VBtn","VContent","VDivider","VImg","VList","VListItem","VListItemTitle","VMenu","VSpacer","VToolbarTitle","VToolbar","class","staticStyle","newValue","oldValue","Message","Type","dismissToast","immediate","_l","components","Toast","config","productionTip","vuetify","render","h","App","$mount"],"mappings":"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","file":"js/app.4c488d1e.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"about\":\"about\"}[chunkId]||chunkId) + \".\" + {\"about\":\"21a2ac78\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"about\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"about\":\"about\"}[chunkId]||chunkId) + \".\" + {\"about\":\"c77b4336\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=css&\"","var map = {\n\t\"./af\": \"f064\",\n\t\"./af.js\": \"f064\",\n\t\"./ar\": \"35c3\",\n\t\"./ar-dz\": \"d68a\",\n\t\"./ar-dz.js\": \"d68a\",\n\t\"./ar-kw\": \"49cd\",\n\t\"./ar-kw.js\": \"49cd\",\n\t\"./ar-ly\": \"1b3b\",\n\t\"./ar-ly.js\": \"1b3b\",\n\t\"./ar-ma\": \"847d\",\n\t\"./ar-ma.js\": \"847d\",\n\t\"./ar-sa\": \"bb68\",\n\t\"./ar-sa.js\": \"bb68\",\n\t\"./ar-tn\": \"e4cc\",\n\t\"./ar-tn.js\": \"e4cc\",\n\t\"./ar.js\": \"35c3\",\n\t\"./az\": \"6555\",\n\t\"./az.js\": \"6555\",\n\t\"./be\": \"9106\",\n\t\"./be.js\": \"9106\",\n\t\"./bg\": \"fa7e\",\n\t\"./bg.js\": \"fa7e\",\n\t\"./bm\": \"4d38\",\n\t\"./bm.js\": \"4d38\",\n\t\"./bn\": \"6881\",\n\t\"./bn-bd\": \"953a\",\n\t\"./bn-bd.js\": \"953a\",\n\t\"./bn.js\": \"6881\",\n\t\"./bo\": \"4166\",\n\t\"./bo.js\": \"4166\",\n\t\"./br\": \"890a\",\n\t\"./br.js\": \"890a\",\n\t\"./bs\": \"10be\",\n\t\"./bs.js\": \"10be\",\n\t\"./ca\": \"bddf\",\n\t\"./ca.js\": \"bddf\",\n\t\"./cs\": \"2bed\",\n\t\"./cs.js\": \"2bed\",\n\t\"./cv\": \"26dd\",\n\t\"./cv.js\": \"26dd\",\n\t\"./cy\": \"b168\",\n\t\"./cy.js\": \"b168\",\n\t\"./da\": \"61c1\",\n\t\"./da.js\": \"61c1\",\n\t\"./de\": \"04a6\",\n\t\"./de-at\": \"3aaf\",\n\t\"./de-at.js\": \"3aaf\",\n\t\"./de-ch\": \"8476\",\n\t\"./de-ch.js\": \"8476\",\n\t\"./de.js\": \"04a6\",\n\t\"./dv\": \"c3c1\",\n\t\"./dv.js\": \"c3c1\",\n\t\"./el\": \"b526\",\n\t\"./el.js\": \"b526\",\n\t\"./en-au\": \"1e0c\",\n\t\"./en-au.js\": \"1e0c\",\n\t\"./en-ca\": \"6724\",\n\t\"./en-ca.js\": \"6724\",\n\t\"./en-gb\": \"7b16\",\n\t\"./en-gb.js\": \"7b16\",\n\t\"./en-ie\": \"c8ac\",\n\t\"./en-ie.js\": \"c8ac\",\n\t\"./en-il\": \"4c1e\",\n\t\"./en-il.js\": \"4c1e\",\n\t\"./en-in\": \"4bbd\",\n\t\"./en-in.js\": \"4bbd\",\n\t\"./en-nz\": \"883c\",\n\t\"./en-nz.js\": \"883c\",\n\t\"./en-sg\": \"cd2d\",\n\t\"./en-sg.js\": \"cd2d\",\n\t\"./eo\": \"e1bb\",\n\t\"./eo.js\": \"e1bb\",\n\t\"./es\": \"18d3\",\n\t\"./es-do\": \"47b9\",\n\t\"./es-do.js\": \"47b9\",\n\t\"./es-mx\": \"164a\",\n\t\"./es-mx.js\": \"164a\",\n\t\"./es-us\": \"36cb\",\n\t\"./es-us.js\": \"36cb\",\n\t\"./es.js\": \"18d3\",\n\t\"./et\": \"64e8\",\n\t\"./et.js\": \"64e8\",\n\t\"./eu\": \"9050\",\n\t\"./eu.js\": \"9050\",\n\t\"./fa\": \"f028\",\n\t\"./fa.js\": \"f028\",\n\t\"./fi\": \"bdc3\",\n\t\"./fi.js\": \"bdc3\",\n\t\"./fil\": \"de0d\",\n\t\"./fil.js\": \"de0d\",\n\t\"./fo\": \"f188\",\n\t\"./fo.js\": \"f188\",\n\t\"./fr\": \"63c2\",\n\t\"./fr-ca\": \"b7e6\",\n\t\"./fr-ca.js\": \"b7e6\",\n\t\"./fr-ch\": \"48f5\",\n\t\"./fr-ch.js\": \"48f5\",\n\t\"./fr.js\": \"63c2\",\n\t\"./fy\": \"4f73\",\n\t\"./fy.js\": \"4f73\",\n\t\"./ga\": \"368c\",\n\t\"./ga.js\": \"368c\",\n\t\"./gd\": \"1896\",\n\t\"./gd.js\": \"1896\",\n\t\"./gl\": \"31d0\",\n\t\"./gl.js\": \"31d0\",\n\t\"./gom-deva\": \"4098\",\n\t\"./gom-deva.js\": \"4098\",\n\t\"./gom-latn\": \"e63d\",\n\t\"./gom-latn.js\": \"e63d\",\n\t\"./gu\": \"7d8d\",\n\t\"./gu.js\": \"7d8d\",\n\t\"./he\": \"0020\",\n\t\"./he.js\": \"0020\",\n\t\"./hi\": \"dd6a\",\n\t\"./hi.js\": \"dd6a\",\n\t\"./hr\": \"3a73\",\n\t\"./hr.js\": \"3a73\",\n\t\"./hu\": \"1109\",\n\t\"./hu.js\": \"1109\",\n\t\"./hy-am\": \"30d7\",\n\t\"./hy-am.js\": \"30d7\",\n\t\"./id\": \"d32a\",\n\t\"./id.js\": \"d32a\",\n\t\"./is\": \"4e63\",\n\t\"./is.js\": \"4e63\",\n\t\"./it\": \"c43f\",\n\t\"./it-ch\": \"7e84\",\n\t\"./it-ch.js\": \"7e84\",\n\t\"./it.js\": \"c43f\",\n\t\"./ja\": \"8ce9\",\n\t\"./ja.js\": \"8ce9\",\n\t\"./jv\": \"94eb\",\n\t\"./jv.js\": \"94eb\",\n\t\"./ka\": \"0403\",\n\t\"./ka.js\": \"0403\",\n\t\"./kk\": \"88d8\",\n\t\"./kk.js\": \"88d8\",\n\t\"./km\": \"4d4c\",\n\t\"./km.js\": \"4d4c\",\n\t\"./kn\": \"850c\",\n\t\"./kn.js\": \"850c\",\n\t\"./ko\": \"64d6\",\n\t\"./ko.js\": \"64d6\",\n\t\"./ku\": \"4b44\",\n\t\"./ku.js\": \"4b44\",\n\t\"./ky\": \"24ef\",\n\t\"./ky.js\": \"24ef\",\n\t\"./lb\": \"be7f\",\n\t\"./lb.js\": \"be7f\",\n\t\"./lo\": \"8272\",\n\t\"./lo.js\": \"8272\",\n\t\"./lt\": \"e8f0\",\n\t\"./lt.js\": \"e8f0\",\n\t\"./lv\": \"60a7\",\n\t\"./lv.js\": \"60a7\",\n\t\"./me\": \"7774\",\n\t\"./me.js\": \"7774\",\n\t\"./mi\": \"8539\",\n\t\"./mi.js\": \"8539\",\n\t\"./mk\": \"7df5\",\n\t\"./mk.js\": \"7df5\",\n\t\"./ml\": \"7a32\",\n\t\"./ml.js\": \"7a32\",\n\t\"./mn\": \"448b\",\n\t\"./mn.js\": \"448b\",\n\t\"./mr\": \"08f2\",\n\t\"./mr.js\": \"08f2\",\n\t\"./ms\": \"7791\",\n\t\"./ms-my\": \"b784\",\n\t\"./ms-my.js\": \"b784\",\n\t\"./ms.js\": \"7791\",\n\t\"./mt\": \"d4a5\",\n\t\"./mt.js\": \"d4a5\",\n\t\"./my\": \"2ec3\",\n\t\"./my.js\": \"2ec3\",\n\t\"./nb\": \"87e5\",\n\t\"./nb.js\": \"87e5\",\n\t\"./ne\": \"d894\",\n\t\"./ne.js\": \"d894\",\n\t\"./nl\": \"8ec6\",\n\t\"./nl-be\": \"fa1e\",\n\t\"./nl-be.js\": \"fa1e\",\n\t\"./nl.js\": \"8ec6\",\n\t\"./nn\": \"9a1d\",\n\t\"./nn.js\": \"9a1d\",\n\t\"./oc-lnc\": \"cd7f\",\n\t\"./oc-lnc.js\": \"cd7f\",\n\t\"./pa-in\": \"3ba6\",\n\t\"./pa-in.js\": \"3ba6\",\n\t\"./pl\": \"f017\",\n\t\"./pl.js\": \"f017\",\n\t\"./pt\": \"0c38\",\n\t\"./pt-br\": \"b879\",\n\t\"./pt-br.js\": \"b879\",\n\t\"./pt.js\": \"0c38\",\n\t\"./ro\": \"6da0\",\n\t\"./ro.js\": \"6da0\",\n\t\"./ru\": \"79cb\",\n\t\"./ru.js\": \"79cb\",\n\t\"./sd\": \"7bd2\",\n\t\"./sd.js\": \"7bd2\",\n\t\"./se\": \"0994\",\n\t\"./se.js\": \"0994\",\n\t\"./si\": \"4cee\",\n\t\"./si.js\": \"4cee\",\n\t\"./sk\": \"2be2\",\n\t\"./sk.js\": \"2be2\",\n\t\"./sl\": \"40ae\",\n\t\"./sl.js\": \"40ae\",\n\t\"./sq\": \"bf74\",\n\t\"./sq.js\": \"bf74\",\n\t\"./sr\": \"35dc\",\n\t\"./sr-cyrl\": \"3c6b\",\n\t\"./sr-cyrl.js\": \"3c6b\",\n\t\"./sr.js\": \"35dc\",\n\t\"./ss\": \"d81f\",\n\t\"./ss.js\": \"d81f\",\n\t\"./sv\": \"585e\",\n\t\"./sv.js\": \"585e\",\n\t\"./sw\": \"e15b\",\n\t\"./sw.js\": \"e15b\",\n\t\"./ta\": \"770d\",\n\t\"./ta.js\": \"770d\",\n\t\"./te\": \"e0c0\",\n\t\"./te.js\": \"e0c0\",\n\t\"./tet\": \"fe18\",\n\t\"./tet.js\": \"fe18\",\n\t\"./tg\": \"3e85\",\n\t\"./tg.js\": \"3e85\",\n\t\"./th\": \"398d\",\n\t\"./th.js\": \"398d\",\n\t\"./tk\": \"ccee\",\n\t\"./tk.js\": \"ccee\",\n\t\"./tl-ph\": \"502f\",\n\t\"./tl-ph.js\": \"502f\",\n\t\"./tlh\": \"7162\",\n\t\"./tlh.js\": \"7162\",\n\t\"./tr\": \"12a6\",\n\t\"./tr.js\": \"12a6\",\n\t\"./tzl\": \"7cdf\",\n\t\"./tzl.js\": \"7cdf\",\n\t\"./tzm\": \"e9c6\",\n\t\"./tzm-latn\": \"a5d0\",\n\t\"./tzm-latn.js\": \"a5d0\",\n\t\"./tzm.js\": \"e9c6\",\n\t\"./ug-cn\": \"27e4\",\n\t\"./ug-cn.js\": \"27e4\",\n\t\"./uk\": \"e8e9\",\n\t\"./uk.js\": \"e8e9\",\n\t\"./ur\": \"40d1\",\n\t\"./ur.js\": \"40d1\",\n\t\"./uz\": \"84bc\",\n\t\"./uz-latn\": \"2aa3\",\n\t\"./uz-latn.js\": \"2aa3\",\n\t\"./uz.js\": \"84bc\",\n\t\"./vi\": \"1272\",\n\t\"./vi.js\": \"1272\",\n\t\"./x-pseudo\": \"5bb75\",\n\t\"./x-pseudo.js\": \"5bb75\",\n\t\"./yo\": \"4038\",\n\t\"./yo.js\": \"4038\",\n\t\"./zh-cn\": \"6e33\",\n\t\"./zh-cn.js\": \"6e33\",\n\t\"./zh-hk\": \"2450\",\n\t\"./zh-hk.js\": \"2450\",\n\t\"./zh-mo\": \"e414\",\n\t\"./zh-mo.js\": \"e414\",\n\t\"./zh-tw\": \"c410\",\n\t\"./zh-tw.js\": \"c410\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"3113\";","module.exports = __webpack_public_path__ + \"img/csk_logo.01668a6b.png\";","//----------------------\n// \n// Generated using the NSwag toolchain v14.1.0.0 (NJsonSchema v11.0.2.0 (Newtonsoft.Json v13.0.0.0)) (http://NSwag.org)\n// \n//----------------------\n\n/* tslint:disable */\n/* eslint-disable */\n// ReSharper disable InconsistentNaming\n\nimport axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse, CancelToken } from 'axios';\n\nimport moment from 'moment';\n\nexport interface IAssigneeClient {\n getAssigneesForPlanTemplate(planTemplateID?: number | undefined): Promise;\n getAssigneesForWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined): Promise;\n getAssigneesForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n}\n\nexport class AssigneeClient implements IAssigneeClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getAssigneesForPlanTemplate(planTemplateID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Assignee/getAssigneesForPlanTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAssigneesForPlanTemplate(_response);\n });\n }\n\n protected processGetAssigneesForPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(AssigneeModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getAssigneesForWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Assignee/getAssignessForWeeklyPlanTeamSession?\";\n if (weeklyPlanTeamSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTeamSessionID' cannot be null.\");\n else if (weeklyPlanTeamSessionID !== undefined)\n url_ += \"weeklyPlanTeamSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTeamSessionID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAssigneesForWeeklyPlanTeamSession(_response);\n });\n }\n\n protected processGetAssigneesForWeeklyPlanTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(AssigneeModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getAssigneesForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Assignee/getAssigneesForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAssigneesForWeeklyPlan(_response);\n });\n }\n\n protected processGetAssigneesForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(AssigneeModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IBookingClient {\n getBooking(id?: number | undefined): Promise;\n getBookingsForDepartment(departmentID?: number | undefined, fromDate?: string | null | undefined, toDate?: string | null | undefined): Promise;\n addBooking(bookingModel: BookingModel): Promise;\n updateBooking(id?: number | undefined, title?: string | null | undefined, bookingDate?: string | null | undefined, bookingStartTime?: string | null | undefined, bookingEndTime?: string | null | undefined, playingFieldID?: number | undefined, comments?: string | null | undefined): Promise;\n deleteBooking(id?: number | undefined): Promise;\n}\n\nexport class BookingClient implements IBookingClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getBooking(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Booking/getBooking?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetBooking(_response);\n });\n }\n\n protected processGetBooking(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = BookingModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getBookingsForDepartment(departmentID?: number | undefined, fromDate?: string | null | undefined, toDate?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Booking/getBookingsForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (fromDate !== undefined && fromDate !== null)\n url_ += \"fromDate=\" + encodeURIComponent(\"\" + fromDate) + \"&\";\n if (toDate !== undefined && toDate !== null)\n url_ += \"toDate=\" + encodeURIComponent(\"\" + toDate) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetBookingsForDepartment(_response);\n });\n }\n\n protected processGetBookingsForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(BookingModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addBooking(bookingModel: BookingModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Booking/addBooking\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(bookingModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddBooking(_response);\n });\n }\n\n protected processAddBooking(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateBooking(id?: number | undefined, title?: string | null | undefined, bookingDate?: string | null | undefined, bookingStartTime?: string | null | undefined, bookingEndTime?: string | null | undefined, playingFieldID?: number | undefined, comments?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Booking/updateBooking?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (title !== undefined && title !== null)\n url_ += \"title=\" + encodeURIComponent(\"\" + title) + \"&\";\n if (bookingDate !== undefined && bookingDate !== null)\n url_ += \"bookingDate=\" + encodeURIComponent(\"\" + bookingDate) + \"&\";\n if (bookingStartTime !== undefined && bookingStartTime !== null)\n url_ += \"bookingStartTime=\" + encodeURIComponent(\"\" + bookingStartTime) + \"&\";\n if (bookingEndTime !== undefined && bookingEndTime !== null)\n url_ += \"bookingEndTime=\" + encodeURIComponent(\"\" + bookingEndTime) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (comments !== undefined && comments !== null)\n url_ += \"comments=\" + encodeURIComponent(\"\" + comments) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateBooking(_response);\n });\n }\n\n protected processUpdateBooking(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deleteBooking(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Booking/deleteBooking?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeleteBooking(_response);\n });\n }\n\n protected processDeleteBooking(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IClubClient {\n getAll(): Promise;\n getClub(): Promise;\n getClubByID(clubID?: number | undefined): Promise;\n addClub(clubModel: ClubModel): Promise;\n updateClub(clubModel: ClubModel): Promise;\n getActivitySummary(): Promise;\n}\n\nexport class ClubClient implements IClubClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Club/getAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(ClubModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getClub( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Club/getClub\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetClub(_response);\n });\n }\n\n protected processGetClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = ClubModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getClubByID(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Club/getClubById?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetClubByID(_response);\n });\n }\n\n protected processGetClubByID(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = ClubModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addClub(clubModel: ClubModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Club/addClub\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(clubModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddClub(_response);\n });\n }\n\n protected processAddClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = resultData200 !== undefined ? resultData200 : null;\n \n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateClub(clubModel: ClubModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Club/updateClub\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(clubModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateClub(_response);\n });\n }\n\n protected processUpdateClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getActivitySummary( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Club\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetActivitySummary(_response);\n });\n }\n\n protected processGetActivitySummary(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(ActivitySummaryModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IDepartmentClient {\n addDepartment(departmentModel: DepartmentModel): Promise;\n getDepartment(id?: number | undefined): Promise;\n getDepartmentsForClub(clubID?: number | undefined): Promise;\n getDepartmentsInSameRegionAsPlayingField(playingFieldID?: number | undefined): Promise;\n getDepartmentCandidatesForUserMembership(userID?: number | undefined): Promise;\n getSports(): Promise;\n}\n\nexport class DepartmentClient implements IDepartmentClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addDepartment(departmentModel: DepartmentModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Department/addDepartment\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(departmentModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddDepartment(_response);\n });\n }\n\n protected processAddDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = resultData200 !== undefined ? resultData200 : null;\n \n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getDepartment(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Department/getDepartment?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDepartment(_response);\n });\n }\n\n protected processGetDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = DepartmentModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getDepartmentsForClub(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Department/getDepartmentsForClub?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDepartmentsForClub(_response);\n });\n }\n\n protected processGetDepartmentsForClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DepartmentModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getDepartmentsInSameRegionAsPlayingField(playingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Department?\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDepartmentsInSameRegionAsPlayingField(_response);\n });\n }\n\n protected processGetDepartmentsInSameRegionAsPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DepartmentModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getDepartmentCandidatesForUserMembership(userID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Department/getDepartmentCandidatesForUserMembership?\";\n if (userID === null)\n throw new Error(\"The parameter 'userID' cannot be null.\");\n else if (userID !== undefined)\n url_ += \"userID=\" + encodeURIComponent(\"\" + userID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDepartmentCandidatesForUserMembership(_response);\n });\n }\n\n protected processGetDepartmentCandidatesForUserMembership(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DepartmentModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getSports( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Department/getSports\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetSports(_response);\n });\n }\n\n protected processGetSports(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(SportModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IDepartmentPlayingFieldClient {\n getExternalPlayingFieldSessions(departmentPlayingFieldId?: number | undefined): Promise;\n getExternalPlayingFieldSession(id?: number | undefined): Promise;\n addExternalPlayingFieldSession(departmentPlayingFieldID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n updateExternalPlayingFieldSession(id?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n deleteExternalPlayingFieldSession(id?: number | undefined): Promise;\n}\n\nexport class DepartmentPlayingFieldClient implements IDepartmentPlayingFieldClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getExternalPlayingFieldSessions(departmentPlayingFieldId?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/DepartmentPlayingField/getExternalPlayingFieldSessions?\";\n if (departmentPlayingFieldId === null)\n throw new Error(\"The parameter 'departmentPlayingFieldId' cannot be null.\");\n else if (departmentPlayingFieldId !== undefined)\n url_ += \"departmentPlayingFieldId=\" + encodeURIComponent(\"\" + departmentPlayingFieldId) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetExternalPlayingFieldSessions(_response);\n });\n }\n\n protected processGetExternalPlayingFieldSessions(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DepartmentPlayingFieldSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getExternalPlayingFieldSession(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/DepartmentPlayingField/getExternalPlayingFieldSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetExternalPlayingFieldSession(_response);\n });\n }\n\n protected processGetExternalPlayingFieldSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = DepartmentPlayingFieldSessionModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addExternalPlayingFieldSession(departmentPlayingFieldID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/DepartmentPlayingField/addExternalPlayingFieldSession?\";\n if (departmentPlayingFieldID === null)\n throw new Error(\"The parameter 'departmentPlayingFieldID' cannot be null.\");\n else if (departmentPlayingFieldID !== undefined)\n url_ += \"departmentPlayingFieldID=\" + encodeURIComponent(\"\" + departmentPlayingFieldID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"weekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddExternalPlayingFieldSession(_response);\n });\n }\n\n protected processAddExternalPlayingFieldSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateExternalPlayingFieldSession(id?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/DepartmentPlayingField/updateExternalPlayingFieldSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"weekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateExternalPlayingFieldSession(_response);\n });\n }\n\n protected processUpdateExternalPlayingFieldSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deleteExternalPlayingFieldSession(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/DepartmentPlayingField/deleteExternalPlayingFieldSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeleteExternalPlayingFieldSession(_response);\n });\n }\n\n protected processDeleteExternalPlayingFieldSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IFieldPlannerClient {\n getDailySummariesForWeeklyPlan(): Promise;\n getFieldEventsForWeeklyPlan(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined): Promise;\n getDatesForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getCalendarEventsForPlanTemplate(planTemplateID?: number | undefined, playingFieldID?: number | undefined, periodEnum?: number | undefined): Promise;\n getCalenderEventsForWeeklyPlan(weeklyPlanID?: number | undefined, mainPlayingFieldID?: number | undefined, periodEnum?: number | undefined): Promise;\n getCalendarEventsInWeek(departmentID?: number | undefined, mainPlayingFieldID?: number | undefined, dateInWeek?: string | null | undefined, periodEnum?: number | undefined): Promise;\n}\n\nexport class FieldPlannerClient implements IFieldPlannerClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getDailySummariesForWeeklyPlan( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/FieldPlanner/getDailySummariesForWeeklyPlan\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDailySummariesForWeeklyPlan(_response);\n });\n }\n\n protected processGetDailySummariesForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DailySummaryModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getFieldEventsForWeeklyPlan(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/FieldPlanner/getFieldEventsForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetFieldEventsForWeeklyPlan(_response);\n });\n }\n\n protected processGetFieldEventsForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(FieldEventModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getDatesForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/FieldPlanner/getDatesForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDatesForWeeklyPlan(_response);\n });\n }\n\n protected processGetDatesForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(item);\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCalendarEventsForPlanTemplate(planTemplateID?: number | undefined, playingFieldID?: number | undefined, periodEnum?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/FieldPlanner/getCalendarEventsForPlanTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (periodEnum === null)\n throw new Error(\"The parameter 'periodEnum' cannot be null.\");\n else if (periodEnum !== undefined)\n url_ += \"periodEnum=\" + encodeURIComponent(\"\" + periodEnum) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCalendarEventsForPlanTemplate(_response);\n });\n }\n\n protected processGetCalendarEventsForPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyCalendarEventModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCalenderEventsForWeeklyPlan(weeklyPlanID?: number | undefined, mainPlayingFieldID?: number | undefined, periodEnum?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/FieldPlanner/getCalendarEventsForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (mainPlayingFieldID === null)\n throw new Error(\"The parameter 'mainPlayingFieldID' cannot be null.\");\n else if (mainPlayingFieldID !== undefined)\n url_ += \"mainPlayingFieldID=\" + encodeURIComponent(\"\" + mainPlayingFieldID) + \"&\";\n if (periodEnum === null)\n throw new Error(\"The parameter 'periodEnum' cannot be null.\");\n else if (periodEnum !== undefined)\n url_ += \"periodEnum=\" + encodeURIComponent(\"\" + periodEnum) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCalenderEventsForWeeklyPlan(_response);\n });\n }\n\n protected processGetCalenderEventsForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyCalendarEventModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCalendarEventsInWeek(departmentID?: number | undefined, mainPlayingFieldID?: number | undefined, dateInWeek?: string | null | undefined, periodEnum?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/FieldPlanner/getCalendarEventsInWeek?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (mainPlayingFieldID === null)\n throw new Error(\"The parameter 'mainPlayingFieldID' cannot be null.\");\n else if (mainPlayingFieldID !== undefined)\n url_ += \"mainPlayingFieldID=\" + encodeURIComponent(\"\" + mainPlayingFieldID) + \"&\";\n if (dateInWeek !== undefined && dateInWeek !== null)\n url_ += \"dateInWeek=\" + encodeURIComponent(\"\" + dateInWeek) + \"&\";\n if (periodEnum === null)\n throw new Error(\"The parameter 'periodEnum' cannot be null.\");\n else if (periodEnum !== undefined)\n url_ += \"periodEnum=\" + encodeURIComponent(\"\" + periodEnum) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCalendarEventsInWeek(_response);\n });\n }\n\n protected processGetCalendarEventsInWeek(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyCalendarEventModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IGenderClient {\n getAll(): Promise;\n}\n\nexport class GenderClient implements IGenderClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(GenderModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IMatchClient {\n addTournamentMatch(playingFieldID?: number | undefined, matchNumber?: string | null | undefined, matchDate?: string | null | undefined, matchTime?: string | null | undefined, endTime?: string | null | undefined, seasonID?: number | undefined, homeTeamName?: string | null | undefined, awayTeamName?: string | null | undefined): Promise;\n updateTournamentMatch(id?: number | undefined, playingFieldId?: number | undefined, matchNumber?: string | null | undefined, matchDate?: string | null | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n getTournamentMatch(id?: number | undefined): Promise;\n getTournamentMatchesForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getTournamentMatchesForTournamentTeam(tournamentTeamId?: number | undefined): Promise;\n getTournamentMatchesForAssignee(assigneeType?: number | undefined, assigneeGuid?: string | null | undefined, matchDate?: string | null | undefined): Promise;\n getTournamentAwayMatchesForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getTournamentMatchesForDepartment(departmentID?: number | undefined): Promise;\n getTournamentMatchesForTeam(teamID?: number | undefined): Promise;\n getRescheduledTournamentMatchesForDepartment(departmentID?: number | undefined): Promise;\n getRescheduledTournamentMatchesForTeam(teamID?: number | undefined): Promise;\n getReschedulerCandidateList(): Promise;\n updateRescheduledTournamentMatch(tournamentMatchID?: number | undefined, rescheduledByEnum?: number | undefined, comments?: string | null | undefined): Promise;\n}\n\nexport class MatchClient implements IMatchClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addTournamentMatch(playingFieldID?: number | undefined, matchNumber?: string | null | undefined, matchDate?: string | null | undefined, matchTime?: string | null | undefined, endTime?: string | null | undefined, seasonID?: number | undefined, homeTeamName?: string | null | undefined, awayTeamName?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/addTournamentMatch?\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (matchNumber !== undefined && matchNumber !== null)\n url_ += \"matchNumber=\" + encodeURIComponent(\"\" + matchNumber) + \"&\";\n if (matchDate !== undefined && matchDate !== null)\n url_ += \"matchDate=\" + encodeURIComponent(\"\" + matchDate) + \"&\";\n if (matchTime !== undefined && matchTime !== null)\n url_ += \"matchTime=\" + encodeURIComponent(\"\" + matchTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n if (homeTeamName !== undefined && homeTeamName !== null)\n url_ += \"homeTeamName=\" + encodeURIComponent(\"\" + homeTeamName) + \"&\";\n if (awayTeamName !== undefined && awayTeamName !== null)\n url_ += \"awayTeamName=\" + encodeURIComponent(\"\" + awayTeamName) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddTournamentMatch(_response);\n });\n }\n\n protected processAddTournamentMatch(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateTournamentMatch(id?: number | undefined, playingFieldId?: number | undefined, matchNumber?: string | null | undefined, matchDate?: string | null | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/updateTournamentMatch?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (playingFieldId === null)\n throw new Error(\"The parameter 'playingFieldId' cannot be null.\");\n else if (playingFieldId !== undefined)\n url_ += \"playingFieldId=\" + encodeURIComponent(\"\" + playingFieldId) + \"&\";\n if (matchNumber !== undefined && matchNumber !== null)\n url_ += \"matchNumber=\" + encodeURIComponent(\"\" + matchNumber) + \"&\";\n if (matchDate !== undefined && matchDate !== null)\n url_ += \"matchDate=\" + encodeURIComponent(\"\" + matchDate) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateTournamentMatch(_response);\n });\n }\n\n protected processUpdateTournamentMatch(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentMatch(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamentMatch?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentMatch(_response);\n });\n }\n\n protected processGetTournamentMatch(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = TournamentMatchModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentMatchesForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamentMatchesForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentMatchesForWeeklyPlan(_response);\n });\n }\n\n protected processGetTournamentMatchesForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentMatchesForTournamentTeam(tournamentTeamId?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamentMatchesForTournamentTeam?\";\n if (tournamentTeamId === null)\n throw new Error(\"The parameter 'tournamentTeamId' cannot be null.\");\n else if (tournamentTeamId !== undefined)\n url_ += \"tournamentTeamId=\" + encodeURIComponent(\"\" + tournamentTeamId) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentMatchesForTournamentTeam(_response);\n });\n }\n\n protected processGetTournamentMatchesForTournamentTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentMatchesForAssignee(assigneeType?: number | undefined, assigneeGuid?: string | null | undefined, matchDate?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamentMatchesForAssignee?\";\n if (assigneeType === null)\n throw new Error(\"The parameter 'assigneeType' cannot be null.\");\n else if (assigneeType !== undefined)\n url_ += \"assigneeType=\" + encodeURIComponent(\"\" + assigneeType) + \"&\";\n if (assigneeGuid !== undefined && assigneeGuid !== null)\n url_ += \"assigneeGuid=\" + encodeURIComponent(\"\" + assigneeGuid) + \"&\";\n if (matchDate !== undefined && matchDate !== null)\n url_ += \"matchDate=\" + encodeURIComponent(\"\" + matchDate) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentMatchesForAssignee(_response);\n });\n }\n\n protected processGetTournamentMatchesForAssignee(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentAwayMatchesForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamenAwaytMatchesForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentAwayMatchesForWeeklyPlan(_response);\n });\n }\n\n protected processGetTournamentAwayMatchesForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentMatchesForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamentMatchesForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentMatchesForDepartment(_response);\n });\n }\n\n protected processGetTournamentMatchesForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentMatchesForTeam(teamID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getTournamentMatchesForTeam?\";\n if (teamID === null)\n throw new Error(\"The parameter 'teamID' cannot be null.\");\n else if (teamID !== undefined)\n url_ += \"teamID=\" + encodeURIComponent(\"\" + teamID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentMatchesForTeam(_response);\n });\n }\n\n protected processGetTournamentMatchesForTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getRescheduledTournamentMatchesForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getRescheduledTournamentMatchesForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetRescheduledTournamentMatchesForDepartment(_response);\n });\n }\n\n protected processGetRescheduledTournamentMatchesForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getRescheduledTournamentMatchesForTeam(teamID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getRescheduledTournamentMatchesForTeam?\";\n if (teamID === null)\n throw new Error(\"The parameter 'teamID' cannot be null.\");\n else if (teamID !== undefined)\n url_ += \"teamID=\" + encodeURIComponent(\"\" + teamID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetRescheduledTournamentMatchesForTeam(_response);\n });\n }\n\n protected processGetRescheduledTournamentMatchesForTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentMatchModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getReschedulerCandidateList( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getReschedulerCandidateList\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetReschedulerCandidateList(_response);\n });\n }\n\n protected processGetReschedulerCandidateList(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DropDownModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateRescheduledTournamentMatch(tournamentMatchID?: number | undefined, rescheduledByEnum?: number | undefined, comments?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/UpdateRescheduledTournamentMatch?\";\n if (tournamentMatchID === null)\n throw new Error(\"The parameter 'tournamentMatchID' cannot be null.\");\n else if (tournamentMatchID !== undefined)\n url_ += \"tournamentMatchID=\" + encodeURIComponent(\"\" + tournamentMatchID) + \"&\";\n if (rescheduledByEnum === null)\n throw new Error(\"The parameter 'rescheduledByEnum' cannot be null.\");\n else if (rescheduledByEnum !== undefined)\n url_ += \"rescheduledByEnum=\" + encodeURIComponent(\"\" + rescheduledByEnum) + \"&\";\n if (comments !== undefined && comments !== null)\n url_ += \"comments=\" + encodeURIComponent(\"\" + comments) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateRescheduledTournamentMatch(_response);\n });\n }\n\n protected processUpdateRescheduledTournamentMatch(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IPersonRoleClient {\n getCurrentCommitteeMembers(departmentID?: number | undefined, committeeEnum?: number | undefined): Promise;\n getHeadCoaches(departmentID?: number | undefined): Promise;\n}\n\nexport class PersonRoleClient implements IPersonRoleClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getCurrentCommitteeMembers(departmentID?: number | undefined, committeeEnum?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PersonRole/getCurrentCommitteeMembers?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (committeeEnum === null)\n throw new Error(\"The parameter 'committeeEnum' cannot be null.\");\n else if (committeeEnum !== undefined)\n url_ += \"committeeEnum=\" + encodeURIComponent(\"\" + committeeEnum) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCurrentCommitteeMembers(_response);\n });\n }\n\n protected processGetCurrentCommitteeMembers(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PersonRoleModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getHeadCoaches(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PersonRole/getHeadCoaches?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetHeadCoaches(_response);\n });\n }\n\n protected processGetHeadCoaches(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PersonRoleModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IPlanTemplateClient {\n getPlanTemplate(id?: number | undefined): Promise;\n getPlanTemplatesForClub(clubID?: number | undefined): Promise;\n getPlanTemplatesForDepartment(departmentID?: number | undefined): Promise;\n getCurrentPlanTemplateForDepartment(departmentID?: number | undefined): Promise;\n getNextPlanTemplateForDepartment(departmentID?: number | undefined): Promise;\n getPlanTemplateForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n addPlanTemplate(planTemplateModel: PlanTemplateModel): Promise;\n updatePlanTemplate(planTemplateModel: PlanTemplateModel): Promise;\n inputIsValid(planTemplateID?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined): Promise;\n inputForNewPlanTemplateIsValid(departmentID?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined): Promise;\n getWeekdays(): Promise;\n getConflictsForPlayingField(planTemplateID?: number | undefined, playingFieldID?: number | undefined, weekday?: number | undefined, startTime?: string | null | undefined): Promise;\n}\n\nexport class PlanTemplateClient implements IPlanTemplateClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getPlanTemplate(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getPlanTemplate?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplate(_response);\n });\n }\n\n protected processGetPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplatesForClub(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getPlanTemplatesForClub?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplatesForClub(_response);\n });\n }\n\n protected processGetPlanTemplatesForClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplatesForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getPlanTemplatesForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplatesForDepartment(_response);\n });\n }\n\n protected processGetPlanTemplatesForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCurrentPlanTemplateForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getCurrentPlanTemplateForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCurrentPlanTemplateForDepartment(_response);\n });\n }\n\n protected processGetCurrentPlanTemplateForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getNextPlanTemplateForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getNextPlanTemplateForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetNextPlanTemplateForDepartment(_response);\n });\n }\n\n protected processGetNextPlanTemplateForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getPlanTemplateForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateForWeeklyPlan(_response);\n });\n }\n\n protected processGetPlanTemplateForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addPlanTemplate(planTemplateModel: PlanTemplateModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/addPlanTemplate\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(planTemplateModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddPlanTemplate(_response);\n });\n }\n\n protected processAddPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updatePlanTemplate(planTemplateModel: PlanTemplateModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/updatePlanTemplate\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(planTemplateModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdatePlanTemplate(_response);\n });\n }\n\n protected processUpdatePlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n inputIsValid(planTemplateID?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/inputIsValid?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (startDate !== undefined && startDate !== null)\n url_ += \"startDate=\" + encodeURIComponent(\"\" + startDate) + \"&\";\n if (endDate !== undefined && endDate !== null)\n url_ += \"endDate=\" + encodeURIComponent(\"\" + endDate) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processInputIsValid(_response);\n });\n }\n\n protected processInputIsValid(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = resultData200 !== undefined ? resultData200 : null;\n \n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n inputForNewPlanTemplateIsValid(departmentID?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/inputForNewPlanTemplateIsValid?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (startDate !== undefined && startDate !== null)\n url_ += \"startDate=\" + encodeURIComponent(\"\" + startDate) + \"&\";\n if (endDate !== undefined && endDate !== null)\n url_ += \"endDate=\" + encodeURIComponent(\"\" + endDate) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processInputForNewPlanTemplateIsValid(_response);\n });\n }\n\n protected processInputForNewPlanTemplateIsValid(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = resultData200 !== undefined ? resultData200 : null;\n \n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeekdays( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getWeekdays\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeekdays(_response);\n });\n }\n\n protected processGetWeekdays(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(WeekdayModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getConflictsForPlayingField(planTemplateID?: number | undefined, playingFieldID?: number | undefined, weekday?: number | undefined, startTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlanTemplate/getConflictsForPlayingField?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (weekday === null)\n throw new Error(\"The parameter 'weekday' cannot be null.\");\n else if (weekday !== undefined)\n url_ += \"weekday=\" + encodeURIComponent(\"\" + weekday) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetConflictsForPlayingField(_response);\n });\n }\n\n protected processGetConflictsForPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(EventModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IPlanTemplateSessionClient {\n addPlanTemplateTeamSession(planTemplateID?: number | undefined, playingFieldID?: number | undefined, assigneeID?: string | null | undefined, assigneeTypeID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, applyForWeeklyPlans?: boolean | undefined): Promise;\n getPlanTemplateTeamSession(id?: number | undefined): Promise;\n getPlanTemplateSessions(planTemplateID?: number | undefined, playingFieldID?: number | undefined): Promise;\n getPlanTemplateSessionsForPlanTemplate(planTemplateID?: number | undefined): Promise;\n getPlanTemplateSessionsForTeam(teamID?: number | undefined): Promise;\n getPlanTemplateSessionsForTeamByPlanTemplate(teamID?: number | undefined, planTemplateID?: number | undefined): Promise;\n updatePlanTemplateTeamSession(newPlanTemplateTeamSessionModel: PlanTemplateSessionModel, applyForWeeklyPlans?: boolean | undefined): Promise;\n deletePlanTemplateTeamSession(id?: number | undefined, applyForWeeklyPlans?: boolean | undefined): Promise;\n}\n\nexport class PlanTemplateSessionClient implements IPlanTemplateSessionClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addPlanTemplateTeamSession(planTemplateID?: number | undefined, playingFieldID?: number | undefined, assigneeID?: string | null | undefined, assigneeTypeID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, applyForWeeklyPlans?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/addPlanTemplateTeamSession?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"PlanTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"PlayingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (assigneeID !== undefined && assigneeID !== null)\n url_ += \"AssigneeID=\" + encodeURIComponent(\"\" + assigneeID) + \"&\";\n if (assigneeTypeID === null)\n throw new Error(\"The parameter 'assigneeTypeID' cannot be null.\");\n else if (assigneeTypeID !== undefined)\n url_ += \"AssigneeTypeID=\" + encodeURIComponent(\"\" + assigneeTypeID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"WeekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n if (applyForWeeklyPlans === null)\n throw new Error(\"The parameter 'applyForWeeklyPlans' cannot be null.\");\n else if (applyForWeeklyPlans !== undefined)\n url_ += \"applyForWeeklyPlans=\" + encodeURIComponent(\"\" + applyForWeeklyPlans) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddPlanTemplateTeamSession(_response);\n });\n }\n\n protected processAddPlanTemplateTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateTeamSession(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateTeamSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateTeamSession(_response);\n });\n }\n\n protected processGetPlanTemplateTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateSessionModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateSessions(planTemplateID?: number | undefined, playingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateSessions?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateSessions(_response);\n });\n }\n\n protected processGetPlanTemplateSessions(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateSessionsForPlanTemplate(planTemplateID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateSessionsForPlanTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateSessionsForPlanTemplate(_response);\n });\n }\n\n protected processGetPlanTemplateSessionsForPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateSessionsForTeam(teamID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateSessionsForTeam?\";\n if (teamID === null)\n throw new Error(\"The parameter 'teamID' cannot be null.\");\n else if (teamID !== undefined)\n url_ += \"teamID=\" + encodeURIComponent(\"\" + teamID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateSessionsForTeam(_response);\n });\n }\n\n protected processGetPlanTemplateSessionsForTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateSessionsForTeamByPlanTemplate(teamID?: number | undefined, planTemplateID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateSessionsForTeambyPlanTemplate?\";\n if (teamID === null)\n throw new Error(\"The parameter 'teamID' cannot be null.\");\n else if (teamID !== undefined)\n url_ += \"teamID=\" + encodeURIComponent(\"\" + teamID) + \"&\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateSessionsForTeamByPlanTemplate(_response);\n });\n }\n\n protected processGetPlanTemplateSessionsForTeamByPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updatePlanTemplateTeamSession(newPlanTemplateTeamSessionModel: PlanTemplateSessionModel, applyForWeeklyPlans?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/updatePlanTemplateTeamSession?\";\n if (applyForWeeklyPlans === null)\n throw new Error(\"The parameter 'applyForWeeklyPlans' cannot be null.\");\n else if (applyForWeeklyPlans !== undefined)\n url_ += \"applyForWeeklyPlans=\" + encodeURIComponent(\"\" + applyForWeeklyPlans) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(newPlanTemplateTeamSessionModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdatePlanTemplateTeamSession(_response);\n });\n }\n\n protected processUpdatePlanTemplateTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deletePlanTemplateTeamSession(id?: number | undefined, applyForWeeklyPlans?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/deletePlanTemplateTeamSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (applyForWeeklyPlans === null)\n throw new Error(\"The parameter 'applyForWeeklyPlans' cannot be null.\");\n else if (applyForWeeklyPlans !== undefined)\n url_ += \"applyForWeeklyPlans=\" + encodeURIComponent(\"\" + applyForWeeklyPlans) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeletePlanTemplateTeamSession(_response);\n });\n }\n\n protected processDeletePlanTemplateTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IPlanTemplateTeamRequestClient {\n getPlanTemplateTeamRequestsForPlanTemplate(planTemplateID?: number | undefined): Promise;\n getPlanTemplateTeamRequest(planTemplateTeamRequestID?: number | undefined): Promise;\n addPlanTemplateTeamRequest(planTemplateID?: number | undefined, teamID?: number | undefined, sessionCount?: number | null | undefined, comments?: string | null | undefined): Promise;\n updatePlanTemplateTeamRequest(planTemplateTeamRequestID?: number | undefined, sessionCount?: number | null | undefined, comments?: string | null | undefined): Promise;\n deletePlanTemplateTeamRequest(id?: number | undefined): Promise;\n}\n\nexport class PlanTemplateTeamRequestClient implements IPlanTemplateTeamRequestClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getPlanTemplateTeamRequestsForPlanTemplate(planTemplateID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateTeamRequestsForPlanTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateTeamRequestsForPlanTemplate(_response);\n });\n }\n\n protected processGetPlanTemplateTeamRequestsForPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlanTemplateTeamRequestModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateTeamRequest(planTemplateTeamRequestID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateTeamRequest?\";\n if (planTemplateTeamRequestID === null)\n throw new Error(\"The parameter 'planTemplateTeamRequestID' cannot be null.\");\n else if (planTemplateTeamRequestID !== undefined)\n url_ += \"planTemplateTeamRequestID=\" + encodeURIComponent(\"\" + planTemplateTeamRequestID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateTeamRequest(_response);\n });\n }\n\n protected processGetPlanTemplateTeamRequest(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateTeamRequestModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addPlanTemplateTeamRequest(planTemplateID?: number | undefined, teamID?: number | undefined, sessionCount?: number | null | undefined, comments?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/addPlanTemplateTeamRequest?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (teamID === null)\n throw new Error(\"The parameter 'teamID' cannot be null.\");\n else if (teamID !== undefined)\n url_ += \"teamID=\" + encodeURIComponent(\"\" + teamID) + \"&\";\n if (sessionCount !== undefined && sessionCount !== null)\n url_ += \"sessionCount=\" + encodeURIComponent(\"\" + sessionCount) + \"&\";\n if (comments !== undefined && comments !== null)\n url_ += \"comments=\" + encodeURIComponent(\"\" + comments) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddPlanTemplateTeamRequest(_response);\n });\n }\n\n protected processAddPlanTemplateTeamRequest(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updatePlanTemplateTeamRequest(planTemplateTeamRequestID?: number | undefined, sessionCount?: number | null | undefined, comments?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/updatePlanTemplateTeamRequest?\";\n if (planTemplateTeamRequestID === null)\n throw new Error(\"The parameter 'planTemplateTeamRequestID' cannot be null.\");\n else if (planTemplateTeamRequestID !== undefined)\n url_ += \"planTemplateTeamRequestID=\" + encodeURIComponent(\"\" + planTemplateTeamRequestID) + \"&\";\n if (sessionCount !== undefined && sessionCount !== null)\n url_ += \"sessionCount=\" + encodeURIComponent(\"\" + sessionCount) + \"&\";\n if (comments !== undefined && comments !== null)\n url_ += \"comments=\" + encodeURIComponent(\"\" + comments) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdatePlanTemplateTeamRequest(_response);\n });\n }\n\n protected processUpdatePlanTemplateTeamRequest(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deletePlanTemplateTeamRequest(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/deletePlanTemplateTeamRequest?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeletePlanTemplateTeamRequest(_response);\n });\n }\n\n protected processDeletePlanTemplateTeamRequest(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IPlanTemplateTenantSessionClient {\n addPlanTemplateTenantSession(planTemplateID?: number | undefined, playingFieldID?: number | undefined, tenantID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, applyForWeeklyPlans?: boolean | undefined): Promise;\n getPlanTemplateTenantSession(id?: number | undefined): Promise;\n updatePlanTemplateTenantSession(model: PlanTemplateTenantSessionModel, applyForWeeklyPlans?: boolean | undefined): Promise;\n deletePlanTemplateTenantSession(id?: number | undefined, applyForWeeklyPlans?: boolean | undefined): Promise;\n}\n\nexport class PlanTemplateTenantSessionClient implements IPlanTemplateTenantSessionClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addPlanTemplateTenantSession(planTemplateID?: number | undefined, playingFieldID?: number | undefined, tenantID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, applyForWeeklyPlans?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/addPlanTemplateTenantSession?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (tenantID === null)\n throw new Error(\"The parameter 'tenantID' cannot be null.\");\n else if (tenantID !== undefined)\n url_ += \"tenantID=\" + encodeURIComponent(\"\" + tenantID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"weekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n if (applyForWeeklyPlans === null)\n throw new Error(\"The parameter 'applyForWeeklyPlans' cannot be null.\");\n else if (applyForWeeklyPlans !== undefined)\n url_ += \"applyForWeeklyPlans=\" + encodeURIComponent(\"\" + applyForWeeklyPlans) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddPlanTemplateTenantSession(_response);\n });\n }\n\n protected processAddPlanTemplateTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlanTemplateTenantSession(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/getPlanTemplateTenantSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlanTemplateTenantSession(_response);\n });\n }\n\n protected processGetPlanTemplateTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlanTemplateTenantSessionModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updatePlanTemplateTenantSession(model: PlanTemplateTenantSessionModel, applyForWeeklyPlans?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/updatePlanTemplateTenantSession?\";\n if (applyForWeeklyPlans === null)\n throw new Error(\"The parameter 'applyForWeeklyPlans' cannot be null.\");\n else if (applyForWeeklyPlans !== undefined)\n url_ += \"applyForWeeklyPlans=\" + encodeURIComponent(\"\" + applyForWeeklyPlans) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(model);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdatePlanTemplateTenantSession(_response);\n });\n }\n\n protected processUpdatePlanTemplateTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deletePlanTemplateTenantSession(id?: number | undefined, applyForWeeklyPlans?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/controller/deletePlanTemplateTenantSession?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (applyForWeeklyPlans === null)\n throw new Error(\"The parameter 'applyForWeeklyPlans' cannot be null.\");\n else if (applyForWeeklyPlans !== undefined)\n url_ += \"applyForWeeklyPlans=\" + encodeURIComponent(\"\" + applyForWeeklyPlans) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeletePlanTemplateTenantSession(_response);\n });\n }\n\n protected processDeletePlanTemplateTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IPlayingFieldClient {\n addPlayingField(playingFieldModel: PlayingFieldModel): Promise;\n updatePlayingField(playingFieldModel: PlayingFieldModel): Promise;\n getPlayingField(id?: number | undefined): Promise;\n assignPlayingFieldToDepartment(playingFieldID?: number | undefined, departmentID?: number | undefined): Promise;\n getMainPlayingFieldsForClub(clubID?: number | undefined): Promise;\n getMainPlayingFieldsForDepartment(departmentID?: number | undefined): Promise;\n getPlayingFieldHierarchyForClub(clubID?: number | undefined): Promise;\n getPlayingFieldHierarchyForTrainingFacility(trainingFacilityID?: number | undefined): Promise;\n getPlayingFieldsForTrainingFacility(trainingFacilityID?: number | undefined): Promise;\n getPlayingFieldsByName(name?: string | null | undefined): Promise;\n getPlayingFieldsAssignedToDepartment(departmentID?: number | undefined, onlyActivePlayingFields?: boolean | undefined): Promise;\n getExternalPlayingFieldsAssignedToDepartment(departmentID?: number | undefined): Promise;\n getPlayingFieldAssignedToDepartment(id?: number | undefined): Promise;\n getPlayingFieldsForDepartment(departmentID?: number | undefined): Promise;\n getExternalPlayingFieldsForDepartment(departmentID?: number | undefined): Promise;\n getPlayingFieldAssignedPeriods(departmentID?: number | undefined, playingFieldID?: number | undefined): Promise;\n updateDepartmentPlayingField(id?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined, comments?: string | null | undefined): Promise;\n getMainPlayingFieldsForTemplate(planTemplateID?: number | undefined): Promise;\n getMainPlayingFieldsForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getPlayingFieldForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getPlayingFieldsForPlanTemplate(planTemplateID?: number | undefined): Promise;\n getPlayingFieldsForWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined): Promise;\n getPlayingFieldsForMainPlayingField(rootPlayingFieldID?: number | undefined): Promise;\n getSurfaces(): Promise;\n getWeeklyPlanSessionsForPlayingField(playingFieldID?: number | undefined): Promise;\n}\n\nexport class PlayingFieldClient implements IPlayingFieldClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addPlayingField(playingFieldModel: PlayingFieldModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/addPlayingField\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(playingFieldModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddPlayingField(_response);\n });\n }\n\n protected processAddPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updatePlayingField(playingFieldModel: PlayingFieldModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/updatePlayingField\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(playingFieldModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdatePlayingField(_response);\n });\n }\n\n protected processUpdatePlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingField(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingField?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingField(_response);\n });\n }\n\n protected processGetPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = PlayingFieldModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n assignPlayingFieldToDepartment(playingFieldID?: number | undefined, departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/assignPlayingFieldToDepartment?\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAssignPlayingFieldToDepartment(_response);\n });\n }\n\n protected processAssignPlayingFieldToDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getMainPlayingFieldsForClub(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getMainPlayingFieldsForClub?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetMainPlayingFieldsForClub(_response);\n });\n }\n\n protected processGetMainPlayingFieldsForClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getMainPlayingFieldsForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getMainPlayingFieldsForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetMainPlayingFieldsForDepartment(_response);\n });\n }\n\n protected processGetMainPlayingFieldsForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldHierarchyForClub(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldHierarchyForClub?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldHierarchyForClub(_response);\n });\n }\n\n protected processGetPlayingFieldHierarchyForClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldHierarchyForTrainingFacility(trainingFacilityID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldHierarchyForTrainingFacility?\";\n if (trainingFacilityID === null)\n throw new Error(\"The parameter 'trainingFacilityID' cannot be null.\");\n else if (trainingFacilityID !== undefined)\n url_ += \"trainingFacilityID=\" + encodeURIComponent(\"\" + trainingFacilityID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldHierarchyForTrainingFacility(_response);\n });\n }\n\n protected processGetPlayingFieldHierarchyForTrainingFacility(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsForTrainingFacility(trainingFacilityID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsForTrainingFacility?\";\n if (trainingFacilityID === null)\n throw new Error(\"The parameter 'trainingFacilityID' cannot be null.\");\n else if (trainingFacilityID !== undefined)\n url_ += \"trainingFacilityID=\" + encodeURIComponent(\"\" + trainingFacilityID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsForTrainingFacility(_response);\n });\n }\n\n protected processGetPlayingFieldsForTrainingFacility(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsByName(name?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsByName?\";\n if (name !== undefined && name !== null)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsByName(_response);\n });\n }\n\n protected processGetPlayingFieldsByName(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsAssignedToDepartment(departmentID?: number | undefined, onlyActivePlayingFields?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsAssignedToDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (onlyActivePlayingFields === null)\n throw new Error(\"The parameter 'onlyActivePlayingFields' cannot be null.\");\n else if (onlyActivePlayingFields !== undefined)\n url_ += \"onlyActivePlayingFields=\" + encodeURIComponent(\"\" + onlyActivePlayingFields) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsAssignedToDepartment(_response);\n });\n }\n\n protected processGetPlayingFieldsAssignedToDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(AssignedPlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getExternalPlayingFieldsAssignedToDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getExternalPlayingFieldsAssignedToDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetExternalPlayingFieldsAssignedToDepartment(_response);\n });\n }\n\n protected processGetExternalPlayingFieldsAssignedToDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(AssignedPlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldAssignedToDepartment(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldAssignedToDepartment?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldAssignedToDepartment(_response);\n });\n }\n\n protected processGetPlayingFieldAssignedToDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = AssignedPlayingFieldModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsForDepartment(_response);\n });\n }\n\n protected processGetPlayingFieldsForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getExternalPlayingFieldsForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getExternalPlayingFieldsForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetExternalPlayingFieldsForDepartment(_response);\n });\n }\n\n protected processGetExternalPlayingFieldsForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldAssignedPeriods(departmentID?: number | undefined, playingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldAssignedPeriods?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldAssignedPeriods(_response);\n });\n }\n\n protected processGetPlayingFieldAssignedPeriods(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(AssignedPlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateDepartmentPlayingField(id?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined, comments?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/updateDepartmentPlayingField?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (startDate !== undefined && startDate !== null)\n url_ += \"startDate=\" + encodeURIComponent(\"\" + startDate) + \"&\";\n if (endDate !== undefined && endDate !== null)\n url_ += \"endDate=\" + encodeURIComponent(\"\" + endDate) + \"&\";\n if (comments !== undefined && comments !== null)\n url_ += \"comments=\" + encodeURIComponent(\"\" + comments) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateDepartmentPlayingField(_response);\n });\n }\n\n protected processUpdateDepartmentPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getMainPlayingFieldsForTemplate(planTemplateID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getMainPlayingFieldsForTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetMainPlayingFieldsForTemplate(_response);\n });\n }\n\n protected processGetMainPlayingFieldsForTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getMainPlayingFieldsForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getMainPlayingFieldsForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetMainPlayingFieldsForWeeklyPlan(_response);\n });\n }\n\n protected processGetMainPlayingFieldsForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldForWeeklyPlan(_response);\n });\n }\n\n protected processGetPlayingFieldForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsForPlanTemplate(planTemplateID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsForPlanTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsForPlanTemplate(_response);\n });\n }\n\n protected processGetPlayingFieldsForPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsForWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsForWeeklyPlanTeamSession?\";\n if (weeklyPlanTeamSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTeamSessionID' cannot be null.\");\n else if (weeklyPlanTeamSessionID !== undefined)\n url_ += \"weeklyPlanTeamSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTeamSessionID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsForWeeklyPlanTeamSession(_response);\n });\n }\n\n protected processGetPlayingFieldsForWeeklyPlanTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPlayingFieldsForMainPlayingField(rootPlayingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getPlayingFieldsForMainPlayingField?\";\n if (rootPlayingFieldID === null)\n throw new Error(\"The parameter 'rootPlayingFieldID' cannot be null.\");\n else if (rootPlayingFieldID !== undefined)\n url_ += \"rootPlayingFieldID=\" + encodeURIComponent(\"\" + rootPlayingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPlayingFieldsForMainPlayingField(_response);\n });\n }\n\n protected processGetPlayingFieldsForMainPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(PlayingFieldModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getSurfaces( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getSurfaces\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetSurfaces(_response);\n });\n }\n\n protected processGetSurfaces(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(SurfaceModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeeklyPlanSessionsForPlayingField(playingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/PlayingField/getWeeklyPlanSessionsForPlayingField?\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlanSessionsForPlayingField(_response);\n });\n }\n\n protected processGetWeeklyPlanSessionsForPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(WeeklyPlanSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IRegionClient {\n getRegion(id?: number | undefined): Promise;\n getAll(): Promise;\n}\n\nexport class RegionClient implements IRegionClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getRegion(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Region/getRegion?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetRegion(_response);\n });\n }\n\n protected processGetRegion(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = RegionModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Region/getAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(RegionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface ISeasonClient {\n addSeason(seasonModel: SeasonModel): Promise;\n getSeason(seasonId?: number | undefined): Promise;\n getAll(): Promise;\n getSeasonsForDepartment(departmentID?: number | undefined): Promise;\n getSeasonForWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n}\n\nexport class SeasonClient implements ISeasonClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addSeason(seasonModel: SeasonModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Season/addSeason\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(seasonModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddSeason(_response);\n });\n }\n\n protected processAddSeason(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getSeason(seasonId?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Season/getSeason?\";\n if (seasonId === null)\n throw new Error(\"The parameter 'seasonId' cannot be null.\");\n else if (seasonId !== undefined)\n url_ += \"seasonId=\" + encodeURIComponent(\"\" + seasonId) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetSeason(_response);\n });\n }\n\n protected processGetSeason(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = SeasonModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Season/getAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(SeasonModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getSeasonsForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Season/getSeasonsForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetSeasonsForDepartment(_response);\n });\n }\n\n protected processGetSeasonsForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(SeasonModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getSeasonForWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Season/getSeasonForWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetSeasonForWeeklyPlan(_response);\n });\n }\n\n protected processGetSeasonForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = SeasonModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IStatisticsClient {\n getDefaultDates(): Promise;\n getMatchSummaryForPlayingField(departmentID?: number | undefined, playingFieldID?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined): Promise;\n}\n\nexport class StatisticsClient implements IStatisticsClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getDefaultDates( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Statistics/getDefaultDates\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetDefaultDates(_response);\n });\n }\n\n protected processGetDefaultDates(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(item);\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getMatchSummaryForPlayingField(departmentID?: number | undefined, playingFieldID?: number | undefined, startDate?: string | null | undefined, endDate?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Statistics/getMatchSummaryForPlayingField?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (startDate !== undefined && startDate !== null)\n url_ += \"startDate=\" + encodeURIComponent(\"\" + startDate) + \"&\";\n if (endDate !== undefined && endDate !== null)\n url_ += \"endDate=\" + encodeURIComponent(\"\" + endDate) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetMatchSummaryForPlayingField(_response);\n });\n }\n\n protected processGetMatchSummaryForPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = MatchSummaryModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface ITeamActivityClient {\n getWeeklyPlanActivitiesForUser(userId?: number | undefined, weeklyPlanId?: number | undefined): Promise;\n}\n\nexport class TeamActivityClient implements ITeamActivityClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getWeeklyPlanActivitiesForUser(userId?: number | undefined, weeklyPlanId?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TeamActivity/getWeeklyPlanActivitiesForUser?\";\n if (userId === null)\n throw new Error(\"The parameter 'userId' cannot be null.\");\n else if (userId !== undefined)\n url_ += \"userId=\" + encodeURIComponent(\"\" + userId) + \"&\";\n if (weeklyPlanId === null)\n throw new Error(\"The parameter 'weeklyPlanId' cannot be null.\");\n else if (weeklyPlanId !== undefined)\n url_ += \"weeklyPlanId=\" + encodeURIComponent(\"\" + weeklyPlanId) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlanActivitiesForUser(_response);\n });\n }\n\n protected processGetWeeklyPlanActivitiesForUser(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(ActivityModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface ITeamClient {\n getTeamByID(id?: number | undefined): Promise;\n getTeamExtended(id?: number | undefined): Promise;\n updateTeam(id?: number | undefined, name?: string | null | undefined, playerCount?: string | null | undefined, comments?: string | null | undefined, genderEnum?: number | null | undefined, backColor?: string | null | undefined): Promise;\n addTeam(departmentID?: number | undefined, seasonID?: number | undefined, name?: string | null | undefined, genderEnum?: number | null | undefined, startYear?: number | undefined, endYear?: number | undefined): Promise;\n addTeamWithoutTeamClasses(departmentID?: number | undefined, seasonID?: number | undefined, name?: string | null | undefined, genderEnum?: number | null | undefined, yearOfBirth?: number | null | undefined): Promise;\n addTeamWithoutBirthYear(departmentID?: number | undefined, seasonID?: number | undefined, name?: string | null | undefined, genderEnum?: number | null | undefined): Promise;\n getTeamsForClub(clubID?: number | undefined): Promise;\n getTeamsForDepartment(departmentID?: number | undefined, seasonID?: number | undefined): Promise;\n getTeamsForPlanTemplate(planTemplateID?: number | undefined, includeDummy?: boolean | undefined): Promise;\n getTeamsForSeason(departmentID?: number | undefined, seasonID?: number | undefined): Promise;\n getFilteredTeamsForSeason(searchString?: string | null | undefined, seasonID?: number | undefined): Promise;\n getFilteredTournamentTeamsForSeason(searchString?: string | null | undefined, seasonID?: number | undefined): Promise;\n getTeamClass(id?: number | undefined): Promise;\n getTeamClassesForTeam(teamID?: number | undefined): Promise;\n updateTeamClass(teamClassModel: TeamClassModel): Promise;\n addTournamentTeam(externalID?: number | undefined, name?: string | null | undefined, seasonID?: number | undefined, departmentID?: number | undefined, genderEnum?: number | undefined): Promise;\n getTournamentTeam(tournamentTeamID?: number | undefined): Promise;\n getTournamentTeams(departmentID?: number | undefined, seasonID?: number | undefined): Promise;\n updateTournamentTeam(tournamentTeamId?: number | undefined, teamId?: number | undefined): Promise;\n getTeamCandidatesForTournamentTeam(tournamentTeamID?: number | undefined): Promise;\n}\n\nexport class TeamClient implements ITeamClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getTeamByID(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamByID?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamByID(_response);\n });\n }\n\n protected processGetTeamByID(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = TeamModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamExtended(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamExtended?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamExtended(_response);\n });\n }\n\n protected processGetTeamExtended(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = TeamModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateTeam(id?: number | undefined, name?: string | null | undefined, playerCount?: string | null | undefined, comments?: string | null | undefined, genderEnum?: number | null | undefined, backColor?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/updateTeam?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n if (name !== undefined && name !== null)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\n if (playerCount !== undefined && playerCount !== null)\n url_ += \"playerCount=\" + encodeURIComponent(\"\" + playerCount) + \"&\";\n if (comments !== undefined && comments !== null)\n url_ += \"comments=\" + encodeURIComponent(\"\" + comments) + \"&\";\n if (genderEnum !== undefined && genderEnum !== null)\n url_ += \"genderEnum=\" + encodeURIComponent(\"\" + genderEnum) + \"&\";\n if (backColor !== undefined && backColor !== null)\n url_ += \"backColor=\" + encodeURIComponent(\"\" + backColor) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateTeam(_response);\n });\n }\n\n protected processUpdateTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addTeam(departmentID?: number | undefined, seasonID?: number | undefined, name?: string | null | undefined, genderEnum?: number | null | undefined, startYear?: number | undefined, endYear?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/addTeam?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n if (name !== undefined && name !== null)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\n if (genderEnum !== undefined && genderEnum !== null)\n url_ += \"genderEnum=\" + encodeURIComponent(\"\" + genderEnum) + \"&\";\n if (startYear === null)\n throw new Error(\"The parameter 'startYear' cannot be null.\");\n else if (startYear !== undefined)\n url_ += \"startYear=\" + encodeURIComponent(\"\" + startYear) + \"&\";\n if (endYear === null)\n throw new Error(\"The parameter 'endYear' cannot be null.\");\n else if (endYear !== undefined)\n url_ += \"endYear=\" + encodeURIComponent(\"\" + endYear) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddTeam(_response);\n });\n }\n\n protected processAddTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addTeamWithoutTeamClasses(departmentID?: number | undefined, seasonID?: number | undefined, name?: string | null | undefined, genderEnum?: number | null | undefined, yearOfBirth?: number | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/addTeamWithoutTeamClasses?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n if (name !== undefined && name !== null)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\n if (genderEnum !== undefined && genderEnum !== null)\n url_ += \"genderEnum=\" + encodeURIComponent(\"\" + genderEnum) + \"&\";\n if (yearOfBirth !== undefined && yearOfBirth !== null)\n url_ += \"yearOfBirth=\" + encodeURIComponent(\"\" + yearOfBirth) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddTeamWithoutTeamClasses(_response);\n });\n }\n\n protected processAddTeamWithoutTeamClasses(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addTeamWithoutBirthYear(departmentID?: number | undefined, seasonID?: number | undefined, name?: string | null | undefined, genderEnum?: number | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/addTeamWithoutBirthYear?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n if (name !== undefined && name !== null)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\n if (genderEnum !== undefined && genderEnum !== null)\n url_ += \"genderEnum=\" + encodeURIComponent(\"\" + genderEnum) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddTeamWithoutBirthYear(_response);\n });\n }\n\n protected processAddTeamWithoutBirthYear(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamsForClub(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamsForClub?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamsForClub(_response);\n });\n }\n\n protected processGetTeamsForClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamsForDepartment(departmentID?: number | undefined, seasonID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamsForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamsForDepartment(_response);\n });\n }\n\n protected processGetTeamsForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamsForPlanTemplate(planTemplateID?: number | undefined, includeDummy?: boolean | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamForPlanTemplate?\";\n if (planTemplateID === null)\n throw new Error(\"The parameter 'planTemplateID' cannot be null.\");\n else if (planTemplateID !== undefined)\n url_ += \"planTemplateID=\" + encodeURIComponent(\"\" + planTemplateID) + \"&\";\n if (includeDummy === null)\n throw new Error(\"The parameter 'includeDummy' cannot be null.\");\n else if (includeDummy !== undefined)\n url_ += \"includeDummy=\" + encodeURIComponent(\"\" + includeDummy) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamsForPlanTemplate(_response);\n });\n }\n\n protected processGetTeamsForPlanTemplate(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamsForSeason(departmentID?: number | undefined, seasonID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamsForSeason?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamsForSeason(_response);\n });\n }\n\n protected processGetTeamsForSeason(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getFilteredTeamsForSeason(searchString?: string | null | undefined, seasonID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getFilteredTeamsForSeason?\";\n if (searchString !== undefined && searchString !== null)\n url_ += \"searchString=\" + encodeURIComponent(\"\" + searchString) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetFilteredTeamsForSeason(_response);\n });\n }\n\n protected processGetFilteredTeamsForSeason(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getFilteredTournamentTeamsForSeason(searchString?: string | null | undefined, seasonID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getFilteredTournamentTeamsForSeason?\";\n if (searchString !== undefined && searchString !== null)\n url_ += \"searchString=\" + encodeURIComponent(\"\" + searchString) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetFilteredTournamentTeamsForSeason(_response);\n });\n }\n\n protected processGetFilteredTournamentTeamsForSeason(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentTeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamClass(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamClass?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamClass(_response);\n });\n }\n\n protected processGetTeamClass(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = TeamClassModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamClassesForTeam(teamID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamClassesForTeam?\";\n if (teamID === null)\n throw new Error(\"The parameter 'teamID' cannot be null.\");\n else if (teamID !== undefined)\n url_ += \"teamID=\" + encodeURIComponent(\"\" + teamID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamClassesForTeam(_response);\n });\n }\n\n protected processGetTeamClassesForTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamClassModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateTeamClass(teamClassModel: TeamClassModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/updateTeamClass\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(teamClassModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateTeamClass(_response);\n });\n }\n\n protected processUpdateTeamClass(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addTournamentTeam(externalID?: number | undefined, name?: string | null | undefined, seasonID?: number | undefined, departmentID?: number | undefined, genderEnum?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/addTournamentTeam?\";\n if (externalID === null)\n throw new Error(\"The parameter 'externalID' cannot be null.\");\n else if (externalID !== undefined)\n url_ += \"externalID=\" + encodeURIComponent(\"\" + externalID) + \"&\";\n if (name !== undefined && name !== null)\n url_ += \"name=\" + encodeURIComponent(\"\" + name) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (genderEnum === null)\n throw new Error(\"The parameter 'genderEnum' cannot be null.\");\n else if (genderEnum !== undefined)\n url_ += \"genderEnum=\" + encodeURIComponent(\"\" + genderEnum) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddTournamentTeam(_response);\n });\n }\n\n protected processAddTournamentTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentTeam(tournamentTeamID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTournamentTeam?\";\n if (tournamentTeamID === null)\n throw new Error(\"The parameter 'tournamentTeamID' cannot be null.\");\n else if (tournamentTeamID !== undefined)\n url_ += \"tournamentTeamID=\" + encodeURIComponent(\"\" + tournamentTeamID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentTeam(_response);\n });\n }\n\n protected processGetTournamentTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = TournamentTeamModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTournamentTeams(departmentID?: number | undefined, seasonID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTournamentTeams?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n if (seasonID === null)\n throw new Error(\"The parameter 'seasonID' cannot be null.\");\n else if (seasonID !== undefined)\n url_ += \"seasonID=\" + encodeURIComponent(\"\" + seasonID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTournamentTeams(_response);\n });\n }\n\n protected processGetTournamentTeams(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TournamentTeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateTournamentTeam(tournamentTeamId?: number | undefined, teamId?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/updateTournamentTeam?\";\n if (tournamentTeamId === null)\n throw new Error(\"The parameter 'tournamentTeamId' cannot be null.\");\n else if (tournamentTeamId !== undefined)\n url_ += \"tournamentTeamId=\" + encodeURIComponent(\"\" + tournamentTeamId) + \"&\";\n if (teamId === null)\n throw new Error(\"The parameter 'teamId' cannot be null.\");\n else if (teamId !== undefined)\n url_ += \"teamId=\" + encodeURIComponent(\"\" + teamId) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateTournamentTeam(_response);\n });\n }\n\n protected processUpdateTournamentTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTeamCandidatesForTournamentTeam(tournamentTeamID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Team/getTeamCandidatesForTournamentTeam?\";\n if (tournamentTeamID === null)\n throw new Error(\"The parameter 'tournamentTeamID' cannot be null.\");\n else if (tournamentTeamID !== undefined)\n url_ += \"tournamentTeamID=\" + encodeURIComponent(\"\" + tournamentTeamID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTeamCandidatesForTournamentTeam(_response);\n });\n }\n\n protected processGetTeamCandidatesForTournamentTeam(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface ITenantClient {\n getAll(): Promise;\n}\n\nexport class TenantClient implements ITenantClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/Tenant/getTrainingFacility\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TenantModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface ITrainingFacilityClient {\n addTrainingFacility(trainingFacilityModel: TrainingFacilityModel): Promise;\n updateTrainingFacility(trainingFacilityModel: TrainingFacilityModel): Promise;\n getTrainingFacility(id?: number | undefined): Promise;\n getAll(): Promise;\n getFiltered(filter?: string | null | undefined): Promise;\n getTrainingFacilitiesForClub(clubID?: number | undefined): Promise;\n}\n\nexport class TrainingFacilityClient implements ITrainingFacilityClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n addTrainingFacility(trainingFacilityModel: TrainingFacilityModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TrainingFacility/addTrainingFacility\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(trainingFacilityModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddTrainingFacility(_response);\n });\n }\n\n protected processAddTrainingFacility(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateTrainingFacility(trainingFacilityModel: TrainingFacilityModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TrainingFacility/updateTrainingFacility\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(trainingFacilityModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateTrainingFacility(_response);\n });\n }\n\n protected processUpdateTrainingFacility(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTrainingFacility(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TrainingFacility/getTrainingFacility?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTrainingFacility(_response);\n });\n }\n\n protected processGetTrainingFacility(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = TrainingFacilityModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TrainingFacility/getAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TrainingFacilityModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getFiltered(filter?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TrainingFacility/getFiltered?\";\n if (filter !== undefined && filter !== null)\n url_ += \"filter=\" + encodeURIComponent(\"\" + filter) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetFiltered(_response);\n });\n }\n\n protected processGetFiltered(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TrainingFacilityModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getTrainingFacilitiesForClub(clubID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/TrainingFacility/getTrainingFacilitiesForClub?\";\n if (clubID === null)\n throw new Error(\"The parameter 'clubID' cannot be null.\");\n else if (clubID !== undefined)\n url_ += \"clubID=\" + encodeURIComponent(\"\" + clubID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetTrainingFacilitiesForClub(_response);\n });\n }\n\n protected processGetTrainingFacilitiesForClub(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(TrainingFacilityModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IUserClient {\n getUser(id?: number | undefined): Promise;\n getUserByAzureID(azureID?: string | null | undefined): Promise;\n getAll(): Promise;\n getUserRoles(azureID?: string | null | undefined): Promise;\n getCurrentUserRole(): Promise;\n getUserRolesForCurrentUser(): Promise;\n getUserRolesByUserID(userID?: number | undefined): Promise;\n getUserTeamRolesByUserID(userID?: number | undefined): Promise;\n getUserRoleByID(userRoleID?: number | undefined): Promise;\n getUserRoleList(): Promise;\n getCurrentUser(): Promise;\n applyMembershipForCurrentUser(departmentID?: number | undefined): Promise;\n updateUserRole(userRoleID?: number | undefined, userRoleEnum?: number | undefined, updatedByUserID?: number | undefined): Promise;\n setCurrentDepartment(departmentID?: number | undefined): Promise;\n}\n\nexport class UserClient implements IUserClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getUser(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUser?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUser(_response);\n });\n }\n\n protected processGetUser(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = UserModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserByAzureID(azureID?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserByAzureId?\";\n if (azureID !== undefined && azureID !== null)\n url_ += \"azureID=\" + encodeURIComponent(\"\" + azureID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserByAzureID(_response);\n });\n }\n\n protected processGetUserByAzureID(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = UserModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getAll( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getAll\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetAll(_response);\n });\n }\n\n protected processGetAll(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(UserModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserRoles(azureID?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserRoles?\";\n if (azureID !== undefined && azureID !== null)\n url_ += \"azureID=\" + encodeURIComponent(\"\" + azureID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserRoles(_response);\n });\n }\n\n protected processGetUserRoles(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(UserRoleModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCurrentUserRole( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getCurrentUserRole\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCurrentUserRole(_response);\n });\n }\n\n protected processGetCurrentUserRole(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = UserRoleModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserRolesForCurrentUser( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserRolesForCurrentUser\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserRolesForCurrentUser(_response);\n });\n }\n\n protected processGetUserRolesForCurrentUser(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(UserRoleModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserRolesByUserID(userID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserRolesByUserId?\";\n if (userID === null)\n throw new Error(\"The parameter 'userID' cannot be null.\");\n else if (userID !== undefined)\n url_ += \"userID=\" + encodeURIComponent(\"\" + userID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserRolesByUserID(_response);\n });\n }\n\n protected processGetUserRolesByUserID(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(UserRoleModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserTeamRolesByUserID(userID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserTeamRolesByUserId?\";\n if (userID === null)\n throw new Error(\"The parameter 'userID' cannot be null.\");\n else if (userID !== undefined)\n url_ += \"userID=\" + encodeURIComponent(\"\" + userID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserTeamRolesByUserID(_response);\n });\n }\n\n protected processGetUserTeamRolesByUserID(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(UserTeamModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserRoleByID(userRoleID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserRoleById?\";\n if (userRoleID === null)\n throw new Error(\"The parameter 'userRoleID' cannot be null.\");\n else if (userRoleID !== undefined)\n url_ += \"userRoleID=\" + encodeURIComponent(\"\" + userRoleID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserRoleByID(_response);\n });\n }\n\n protected processGetUserRoleByID(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = UserRoleModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getUserRoleList( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getUserRoleList\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetUserRoleList(_response);\n });\n }\n\n protected processGetUserRoleList(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DropDownModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCurrentUser( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/getCurrentUser\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCurrentUser(_response);\n });\n }\n\n protected processGetCurrentUser(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = UserModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n applyMembershipForCurrentUser(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/applyMembershipForCurrentUser?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processApplyMembershipForCurrentUser(_response);\n });\n }\n\n protected processApplyMembershipForCurrentUser(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateUserRole(userRoleID?: number | undefined, userRoleEnum?: number | undefined, updatedByUserID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/updateUserRole?\";\n if (userRoleID === null)\n throw new Error(\"The parameter 'userRoleID' cannot be null.\");\n else if (userRoleID !== undefined)\n url_ += \"userRoleID=\" + encodeURIComponent(\"\" + userRoleID) + \"&\";\n if (userRoleEnum === null)\n throw new Error(\"The parameter 'userRoleEnum' cannot be null.\");\n else if (userRoleEnum !== undefined)\n url_ += \"userRoleEnum=\" + encodeURIComponent(\"\" + userRoleEnum) + \"&\";\n if (updatedByUserID === null)\n throw new Error(\"The parameter 'updatedByUserID' cannot be null.\");\n else if (updatedByUserID !== undefined)\n url_ += \"updatedByUserID=\" + encodeURIComponent(\"\" + updatedByUserID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateUserRole(_response);\n });\n }\n\n protected processUpdateUserRole(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n setCurrentDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/User/setCurrentDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processSetCurrentDepartment(_response);\n });\n }\n\n protected processSetCurrentDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IWeeklyPlanClient {\n updateWeeklyPlan(weeklyPlanModel: WeeklyPlanModel): Promise;\n getWeeklyPlan(id?: number | undefined): Promise;\n getWeeklyPlansForDepartment(departmentID?: number | undefined): Promise;\n getConflictsForWeeklyPlan(weeklyPlanId?: number | undefined): Promise;\n getConflictsForPlayingField(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, weekday?: number | undefined, startTime?: string | null | undefined): Promise;\n getPeriods(): Promise;\n getPreviousWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getNextWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n deleteWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n recreateWeeklyPlan(weeklyPlanID?: number | undefined): Promise;\n getCurrentWeeklyPlanForDepartment(departmentID?: number | undefined): Promise;\n}\n\nexport class WeeklyPlanClient implements IWeeklyPlanClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n updateWeeklyPlan(weeklyPlanModel: WeeklyPlanModel, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/updateWeeklyPlan\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n const content_ = JSON.stringify(weeklyPlanModel);\n\n let options_: AxiosRequestConfig = {\n data: content_,\n method: \"POST\",\n url: url_,\n headers: {\n \"Content-Type\": \"application/json\",\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateWeeklyPlan(_response);\n });\n }\n\n protected processUpdateWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeeklyPlan(id?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getWeeklyPlan?\";\n if (id === null)\n throw new Error(\"The parameter 'id' cannot be null.\");\n else if (id !== undefined)\n url_ += \"id=\" + encodeURIComponent(\"\" + id) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlan(_response);\n });\n }\n\n protected processGetWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyPlanModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeeklyPlansForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getWeeklyPlansForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlansForDepartment(_response);\n });\n }\n\n protected processGetWeeklyPlansForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(WeeklyPlanModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getConflictsForWeeklyPlan(weeklyPlanId?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getConflictsForWeeklyPlan?\";\n if (weeklyPlanId === null)\n throw new Error(\"The parameter 'weeklyPlanId' cannot be null.\");\n else if (weeklyPlanId !== undefined)\n url_ += \"weeklyPlanId=\" + encodeURIComponent(\"\" + weeklyPlanId) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetConflictsForWeeklyPlan(_response);\n });\n }\n\n protected processGetConflictsForWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(WeeklyPlanConflictModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getConflictsForPlayingField(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, weekday?: number | undefined, startTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getConflictsForPlayingField?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (weekday === null)\n throw new Error(\"The parameter 'weekday' cannot be null.\");\n else if (weekday !== undefined)\n url_ += \"weekday=\" + encodeURIComponent(\"\" + weekday) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetConflictsForPlayingField(_response);\n });\n }\n\n protected processGetConflictsForPlayingField(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(EventModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPeriods( cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getPeriods\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPeriods(_response);\n });\n }\n\n protected processGetPeriods(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(DropDownModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getPreviousWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getPreviousWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetPreviousWeeklyPlan(_response);\n });\n }\n\n protected processGetPreviousWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyPlanModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getNextWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getNextWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetNextWeeklyPlan(_response);\n });\n }\n\n protected processGetNextWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyPlanModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deleteWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/deleteWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeleteWeeklyPlan(_response);\n });\n }\n\n protected processDeleteWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n recreateWeeklyPlan(weeklyPlanID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/recreateWeeklyPlan?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processRecreateWeeklyPlan(_response);\n });\n }\n\n protected processRecreateWeeklyPlan(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = resultData200 !== undefined ? resultData200 : null;\n \n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getCurrentWeeklyPlanForDepartment(departmentID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/WeeklyPlan/getCurrentWeeklyPlanForDepartment?\";\n if (departmentID === null)\n throw new Error(\"The parameter 'departmentID' cannot be null.\");\n else if (departmentID !== undefined)\n url_ += \"departmentID=\" + encodeURIComponent(\"\" + departmentID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetCurrentWeeklyPlanForDepartment(_response);\n });\n }\n\n protected processGetCurrentWeeklyPlanForDepartment(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyPlanModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IWeeklyPlanSessionClient {\n getWeeklyPlanSessions(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined): Promise;\n getWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined): Promise;\n getWeeklyPlanTenantSession(weeklyPlanTenantSessionID?: number | undefined): Promise;\n getWeeklyPlanTeamSessionsForAssignee(weeklyPlanID?: number | undefined, weekdayEnum?: number | undefined, assigneeGuid?: string | null | undefined, assigneeType?: number | undefined): Promise;\n addWeeklyPlanTeamSession(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, assigneeID?: string | null | undefined, assigneeTypeID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n addWeeklyPlanTenantSession(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, tenantID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n updateWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined, playingFieldID?: number | undefined, assigneeID?: string | null | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n updateWeeklyPlanTenantSession(weeklyPlanTenantSessionID?: number | undefined, playingFieldID?: number | undefined, tenantID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined): Promise;\n deleteWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined): Promise;\n deleteWeeklyPlanTenantSession(weeklyPlanTenantSessionID?: number | undefined): Promise;\n}\n\nexport class WeeklyPlanSessionClient implements IWeeklyPlanSessionClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n getWeeklyPlanSessions(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getWeeklyPlanSessions?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlanSessions(_response);\n });\n }\n\n protected processGetWeeklyPlanSessions(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(WeeklyPlanSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getWeeklyPlanSession?\";\n if (weeklyPlanTeamSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTeamSessionID' cannot be null.\");\n else if (weeklyPlanTeamSessionID !== undefined)\n url_ += \"weeklyPlanTeamSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTeamSessionID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlanTeamSession(_response);\n });\n }\n\n protected processGetWeeklyPlanTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyPlanSessionModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeeklyPlanTenantSession(weeklyPlanTenantSessionID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getWeeklyPlanTenantSession?\";\n if (weeklyPlanTenantSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTenantSessionID' cannot be null.\");\n else if (weeklyPlanTenantSessionID !== undefined)\n url_ += \"weeklyPlanTenantSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTenantSessionID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlanTenantSession(_response);\n });\n }\n\n protected processGetWeeklyPlanTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n result200 = WeeklyPlanTenantSessionModel.fromJS(resultData200);\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n getWeeklyPlanTeamSessionsForAssignee(weeklyPlanID?: number | undefined, weekdayEnum?: number | undefined, assigneeGuid?: string | null | undefined, assigneeType?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/getWeeklyPlanTeamSessionsForAssignee?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"weekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (assigneeGuid !== undefined && assigneeGuid !== null)\n url_ += \"assigneeGuid=\" + encodeURIComponent(\"\" + assigneeGuid) + \"&\";\n if (assigneeType === null)\n throw new Error(\"The parameter 'assigneeType' cannot be null.\");\n else if (assigneeType !== undefined)\n url_ += \"assigneeType=\" + encodeURIComponent(\"\" + assigneeType) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/json\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processGetWeeklyPlanTeamSessionsForAssignee(_response);\n });\n }\n\n protected processGetWeeklyPlanTeamSessionsForAssignee(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n let result200: any = null;\n let resultData200 = _responseText;\n if (Array.isArray(resultData200)) {\n result200 = [] as any;\n for (let item of resultData200)\n result200!.push(WeeklyPlanSessionModel.fromJS(item));\n }\n else {\n result200 = null;\n }\n return Promise.resolve(result200);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addWeeklyPlanTeamSession(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, assigneeID?: string | null | undefined, assigneeTypeID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/addWeeklyPlanTeamSession?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"WeeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"PlayingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (assigneeID !== undefined && assigneeID !== null)\n url_ += \"AssigneeID=\" + encodeURIComponent(\"\" + assigneeID) + \"&\";\n if (assigneeTypeID === null)\n throw new Error(\"The parameter 'assigneeTypeID' cannot be null.\");\n else if (assigneeTypeID !== undefined)\n url_ += \"AssigneeTypeID=\" + encodeURIComponent(\"\" + assigneeTypeID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"WeekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddWeeklyPlanTeamSession(_response);\n });\n }\n\n protected processAddWeeklyPlanTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n addWeeklyPlanTenantSession(weeklyPlanID?: number | undefined, playingFieldID?: number | undefined, tenantID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/addWeeklyPlanTenantSession?\";\n if (weeklyPlanID === null)\n throw new Error(\"The parameter 'weeklyPlanID' cannot be null.\");\n else if (weeklyPlanID !== undefined)\n url_ += \"weeklyPlanID=\" + encodeURIComponent(\"\" + weeklyPlanID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (tenantID === null)\n throw new Error(\"The parameter 'tenantID' cannot be null.\");\n else if (tenantID !== undefined)\n url_ += \"tenantID=\" + encodeURIComponent(\"\" + tenantID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"weekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processAddWeeklyPlanTenantSession(_response);\n });\n }\n\n protected processAddWeeklyPlanTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined, playingFieldID?: number | undefined, assigneeID?: string | null | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/updateWeeklyPlanTeamSession?\";\n if (weeklyPlanTeamSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTeamSessionID' cannot be null.\");\n else if (weeklyPlanTeamSessionID !== undefined)\n url_ += \"weeklyPlanTeamSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTeamSessionID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (assigneeID !== undefined && assigneeID !== null)\n url_ += \"AssigneeID=\" + encodeURIComponent(\"\" + assigneeID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"WeekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"GET\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateWeeklyPlanTeamSession(_response);\n });\n }\n\n protected processUpdateWeeklyPlanTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n updateWeeklyPlanTenantSession(weeklyPlanTenantSessionID?: number | undefined, playingFieldID?: number | undefined, tenantID?: number | undefined, weekdayEnum?: number | undefined, startTime?: string | null | undefined, endTime?: string | null | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/updateWeeklyPlanTenantSession?\";\n if (weeklyPlanTenantSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTenantSessionID' cannot be null.\");\n else if (weeklyPlanTenantSessionID !== undefined)\n url_ += \"weeklyPlanTenantSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTenantSessionID) + \"&\";\n if (playingFieldID === null)\n throw new Error(\"The parameter 'playingFieldID' cannot be null.\");\n else if (playingFieldID !== undefined)\n url_ += \"playingFieldID=\" + encodeURIComponent(\"\" + playingFieldID) + \"&\";\n if (tenantID === null)\n throw new Error(\"The parameter 'tenantID' cannot be null.\");\n else if (tenantID !== undefined)\n url_ += \"tenantID=\" + encodeURIComponent(\"\" + tenantID) + \"&\";\n if (weekdayEnum === null)\n throw new Error(\"The parameter 'weekdayEnum' cannot be null.\");\n else if (weekdayEnum !== undefined)\n url_ += \"weekdayEnum=\" + encodeURIComponent(\"\" + weekdayEnum) + \"&\";\n if (startTime !== undefined && startTime !== null)\n url_ += \"startTime=\" + encodeURIComponent(\"\" + startTime) + \"&\";\n if (endTime !== undefined && endTime !== null)\n url_ += \"endTime=\" + encodeURIComponent(\"\" + endTime) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processUpdateWeeklyPlanTenantSession(_response);\n });\n }\n\n protected processUpdateWeeklyPlanTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deleteWeeklyPlanTeamSession(weeklyPlanTeamSessionID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/deleteWeeklyPlanTeamSession?\";\n if (weeklyPlanTeamSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTeamSessionID' cannot be null.\");\n else if (weeklyPlanTeamSessionID !== undefined)\n url_ += \"weeklyPlanTeamSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTeamSessionID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeleteWeeklyPlanTeamSession(_response);\n });\n }\n\n protected processDeleteWeeklyPlanTeamSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n deleteWeeklyPlanTenantSession(weeklyPlanTenantSessionID?: number | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/deleteWeeklyPlanTenantSession?\";\n if (weeklyPlanTenantSessionID === null)\n throw new Error(\"The parameter 'weeklyPlanTenantSessionID' cannot be null.\");\n else if (weeklyPlanTenantSessionID !== undefined)\n url_ += \"weeklyPlanTenantSessionID=\" + encodeURIComponent(\"\" + weeklyPlanTenantSessionID) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n method: \"POST\",\n url: url_,\n headers: {\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processDeleteWeeklyPlanTenantSession(_response);\n });\n }\n\n protected processDeleteWeeklyPlanTenantSession(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200) {\n const _responseText = response.data;\n return Promise.resolve(null as any);\n\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport interface IAccountClient {\n signIn(scheme: string, redirectUri?: string | undefined): Promise;\n challenge(scheme: string, redirectUri?: string | undefined, scope?: string | undefined, loginHint?: string | undefined, domainHint?: string | undefined, claims?: string | undefined, policy?: string | undefined): Promise;\n signOut(scheme: string): Promise;\n resetPassword(scheme: string): Promise;\n editProfile(scheme: string): Promise;\n}\n\nexport class AccountClient implements IAccountClient {\n protected instance: AxiosInstance;\n protected baseUrl: string;\n protected jsonParseReviver: ((key: string, value: any) => any) | undefined = undefined;\n\n constructor(baseUrl?: string, instance?: AxiosInstance) {\n\n this.instance = instance || axios.create();\n\n this.baseUrl = baseUrl ?? \"\";\n\n }\n\n signIn(scheme: string, redirectUri?: string | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/MicrosoftIdentity/Account/SignIn/{scheme}?\";\n if (scheme === undefined || scheme === null)\n throw new Error(\"The parameter 'scheme' must be defined.\");\n url_ = url_.replace(\"{scheme}\", encodeURIComponent(\"\" + scheme));\n if (redirectUri === null)\n throw new Error(\"The parameter 'redirectUri' cannot be null.\");\n else if (redirectUri !== undefined)\n url_ += \"redirectUri=\" + encodeURIComponent(\"\" + redirectUri) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n responseType: \"blob\",\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/octet-stream\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processSignIn(_response);\n });\n }\n\n protected processSignIn(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n if (fileName) {\n fileName = decodeURIComponent(fileName);\n } else {\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n }\n return Promise.resolve({ fileName: fileName, status: status, data: new Blob([response.data], { type: response.headers[\"content-type\"] }), headers: _headers });\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n challenge(scheme: string, redirectUri?: string | undefined, scope?: string | undefined, loginHint?: string | undefined, domainHint?: string | undefined, claims?: string | undefined, policy?: string | undefined, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/MicrosoftIdentity/Account/Challenge/{scheme}?\";\n if (scheme === undefined || scheme === null)\n throw new Error(\"The parameter 'scheme' must be defined.\");\n url_ = url_.replace(\"{scheme}\", encodeURIComponent(\"\" + scheme));\n if (redirectUri === null)\n throw new Error(\"The parameter 'redirectUri' cannot be null.\");\n else if (redirectUri !== undefined)\n url_ += \"redirectUri=\" + encodeURIComponent(\"\" + redirectUri) + \"&\";\n if (scope === null)\n throw new Error(\"The parameter 'scope' cannot be null.\");\n else if (scope !== undefined)\n url_ += \"scope=\" + encodeURIComponent(\"\" + scope) + \"&\";\n if (loginHint === null)\n throw new Error(\"The parameter 'loginHint' cannot be null.\");\n else if (loginHint !== undefined)\n url_ += \"loginHint=\" + encodeURIComponent(\"\" + loginHint) + \"&\";\n if (domainHint === null)\n throw new Error(\"The parameter 'domainHint' cannot be null.\");\n else if (domainHint !== undefined)\n url_ += \"domainHint=\" + encodeURIComponent(\"\" + domainHint) + \"&\";\n if (claims === null)\n throw new Error(\"The parameter 'claims' cannot be null.\");\n else if (claims !== undefined)\n url_ += \"claims=\" + encodeURIComponent(\"\" + claims) + \"&\";\n if (policy === null)\n throw new Error(\"The parameter 'policy' cannot be null.\");\n else if (policy !== undefined)\n url_ += \"policy=\" + encodeURIComponent(\"\" + policy) + \"&\";\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n responseType: \"blob\",\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/octet-stream\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processChallenge(_response);\n });\n }\n\n protected processChallenge(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n if (fileName) {\n fileName = decodeURIComponent(fileName);\n } else {\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n }\n return Promise.resolve({ fileName: fileName, status: status, data: new Blob([response.data], { type: response.headers[\"content-type\"] }), headers: _headers });\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n signOut(scheme: string, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/MicrosoftIdentity/Account/SignOut/{scheme}\";\n if (scheme === undefined || scheme === null)\n throw new Error(\"The parameter 'scheme' must be defined.\");\n url_ = url_.replace(\"{scheme}\", encodeURIComponent(\"\" + scheme));\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n responseType: \"blob\",\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/octet-stream\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processSignOut(_response);\n });\n }\n\n protected processSignOut(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n if (fileName) {\n fileName = decodeURIComponent(fileName);\n } else {\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n }\n return Promise.resolve({ fileName: fileName, status: status, data: new Blob([response.data], { type: response.headers[\"content-type\"] }), headers: _headers });\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n resetPassword(scheme: string, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/MicrosoftIdentity/Account/ResetPassword/{scheme}\";\n if (scheme === undefined || scheme === null)\n throw new Error(\"The parameter 'scheme' must be defined.\");\n url_ = url_.replace(\"{scheme}\", encodeURIComponent(\"\" + scheme));\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n responseType: \"blob\",\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/octet-stream\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processResetPassword(_response);\n });\n }\n\n protected processResetPassword(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n if (fileName) {\n fileName = decodeURIComponent(fileName);\n } else {\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n }\n return Promise.resolve({ fileName: fileName, status: status, data: new Blob([response.data], { type: response.headers[\"content-type\"] }), headers: _headers });\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n\n editProfile(scheme: string, cancelToken?: CancelToken): Promise {\n let url_ = this.baseUrl + \"/MicrosoftIdentity/Account/EditProfile/{scheme}\";\n if (scheme === undefined || scheme === null)\n throw new Error(\"The parameter 'scheme' must be defined.\");\n url_ = url_.replace(\"{scheme}\", encodeURIComponent(\"\" + scheme));\n url_ = url_.replace(/[?&]$/, \"\");\n\n let options_: AxiosRequestConfig = {\n responseType: \"blob\",\n method: \"GET\",\n url: url_,\n headers: {\n \"Accept\": \"application/octet-stream\"\n },\n cancelToken\n };\n\n return this.instance.request(options_).catch((_error: any) => {\n if (isAxiosError(_error) && _error.response) {\n return _error.response;\n } else {\n throw _error;\n }\n }).then((_response: AxiosResponse) => {\n return this.processEditProfile(_response);\n });\n }\n\n protected processEditProfile(response: AxiosResponse): Promise {\n const status = response.status;\n let _headers: any = {};\n if (response.headers && typeof response.headers === \"object\") {\n for (const k in response.headers) {\n if (response.headers.hasOwnProperty(k)) {\n _headers[k] = response.headers[k];\n }\n }\n }\n if (status === 200 || status === 206) {\n const contentDisposition = response.headers ? response.headers[\"content-disposition\"] : undefined;\n let fileNameMatch = contentDisposition ? /filename\\*=(?:(\\\\?['\"])(.*?)\\1|(?:[^\\s]+'.*?')?([^;\\n]*))/g.exec(contentDisposition) : undefined;\n let fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[3] || fileNameMatch[2] : undefined;\n if (fileName) {\n fileName = decodeURIComponent(fileName);\n } else {\n fileNameMatch = contentDisposition ? /filename=\"?([^\"]*?)\"?(;|$)/g.exec(contentDisposition) : undefined;\n fileName = fileNameMatch && fileNameMatch.length > 1 ? fileNameMatch[1] : undefined;\n }\n return Promise.resolve({ fileName: fileName, status: status, data: new Blob([response.data], { type: response.headers[\"content-type\"] }), headers: _headers });\n } else if (status !== 200 && status !== 204) {\n const _responseText = response.data;\n return throwException(\"An unexpected server error occurred.\", status, _responseText, _headers);\n }\n return Promise.resolve(null as any);\n }\n}\n\nexport class AssigneeModel implements IAssigneeModel {\n id!: string | undefined;\n assigneeTypeID!: number;\n name!: string | undefined;\n\n constructor(data?: IAssigneeModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.assigneeTypeID = _data[\"assigneeTypeID\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): AssigneeModel {\n data = typeof data === 'object' ? data : {};\n let result = new AssigneeModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"assigneeTypeID\"] = this.assigneeTypeID;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface IAssigneeModel {\n id: string | undefined;\n assigneeTypeID: number;\n name: string | undefined;\n}\n\nexport class BookingModel implements IBookingModel {\n id!: number;\n title!: string | undefined;\n description!: string | undefined;\n departmentID!: number;\n playingFieldID!: number;\n playingFieldName!: string | undefined;\n bookingDate!: string | undefined;\n startTime!: string | undefined;\n endTime!: string | undefined;\n comments!: string | undefined;\n\n constructor(data?: IBookingModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.title = _data[\"title\"];\n this.description = _data[\"description\"];\n this.departmentID = _data[\"departmentID\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.bookingDate = _data[\"bookingDate\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n this.comments = _data[\"comments\"];\n }\n }\n\n static fromJS(data: any): BookingModel {\n data = typeof data === 'object' ? data : {};\n let result = new BookingModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"title\"] = this.title;\n data[\"description\"] = this.description;\n data[\"departmentID\"] = this.departmentID;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"bookingDate\"] = this.bookingDate;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n data[\"comments\"] = this.comments;\n return data;\n }\n}\n\nexport interface IBookingModel {\n id: number;\n title: string | undefined;\n description: string | undefined;\n departmentID: number;\n playingFieldID: number;\n playingFieldName: string | undefined;\n bookingDate: string | undefined;\n startTime: string | undefined;\n endTime: string | undefined;\n comments: string | undefined;\n}\n\nexport class ClubModel implements IClubModel {\n id!: number;\n name!: string | undefined;\n externalID!: number;\n regionName!: string | undefined;\n\n constructor(data?: IClubModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n this.externalID = _data[\"externalID\"];\n this.regionName = _data[\"regionName\"];\n }\n }\n\n static fromJS(data: any): ClubModel {\n data = typeof data === 'object' ? data : {};\n let result = new ClubModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n data[\"externalID\"] = this.externalID;\n data[\"regionName\"] = this.regionName;\n return data;\n }\n}\n\nexport interface IClubModel {\n id: number;\n name: string | undefined;\n externalID: number;\n regionName: string | undefined;\n}\n\nexport class ActivitySummaryModel implements IActivitySummaryModel {\n trainingFieldName!: string | undefined;\n sessionCount!: number;\n fieldConditions!: string | undefined;\n\n constructor(data?: IActivitySummaryModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.trainingFieldName = _data[\"trainingFieldName\"];\n this.sessionCount = _data[\"sessionCount\"];\n this.fieldConditions = _data[\"fieldConditions\"];\n }\n }\n\n static fromJS(data: any): ActivitySummaryModel {\n data = typeof data === 'object' ? data : {};\n let result = new ActivitySummaryModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"trainingFieldName\"] = this.trainingFieldName;\n data[\"sessionCount\"] = this.sessionCount;\n data[\"fieldConditions\"] = this.fieldConditions;\n return data;\n }\n}\n\nexport interface IActivitySummaryModel {\n trainingFieldName: string | undefined;\n sessionCount: number;\n fieldConditions: string | undefined;\n}\n\nexport class DepartmentModel implements IDepartmentModel {\n id!: number;\n clubID!: number;\n clubName!: string | undefined;\n name!: string | undefined;\n sportEnum!: number;\n externalID!: number | undefined;\n showNextTemplateOnFrontPage!: boolean;\n\n constructor(data?: IDepartmentModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.clubID = _data[\"clubID\"];\n this.clubName = _data[\"clubName\"];\n this.name = _data[\"name\"];\n this.sportEnum = _data[\"sportEnum\"];\n this.externalID = _data[\"externalID\"];\n this.showNextTemplateOnFrontPage = _data[\"showNextTemplateOnFrontPage\"];\n }\n }\n\n static fromJS(data: any): DepartmentModel {\n data = typeof data === 'object' ? data : {};\n let result = new DepartmentModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"clubID\"] = this.clubID;\n data[\"clubName\"] = this.clubName;\n data[\"name\"] = this.name;\n data[\"sportEnum\"] = this.sportEnum;\n data[\"externalID\"] = this.externalID;\n data[\"showNextTemplateOnFrontPage\"] = this.showNextTemplateOnFrontPage;\n return data;\n }\n}\n\nexport interface IDepartmentModel {\n id: number;\n clubID: number;\n clubName: string | undefined;\n name: string | undefined;\n sportEnum: number;\n externalID: number | undefined;\n showNextTemplateOnFrontPage: boolean;\n}\n\nexport class SportModel implements ISportModel {\n id!: number;\n name!: string | undefined;\n\n constructor(data?: ISportModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): SportModel {\n data = typeof data === 'object' ? data : {};\n let result = new SportModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface ISportModel {\n id: number;\n name: string | undefined;\n}\n\nexport class DepartmentPlayingFieldSessionModel implements IDepartmentPlayingFieldSessionModel {\n id!: number;\n departmentID!: number;\n playingFieldID!: number;\n weekdayEnum!: number;\n weekdayName!: string | undefined;\n startTime!: string | undefined;\n endTime!: string | undefined;\n\n constructor(data?: IDepartmentPlayingFieldSessionModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.departmentID = _data[\"departmentID\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.weekdayEnum = _data[\"weekdayEnum\"];\n this.weekdayName = _data[\"weekdayName\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n }\n }\n\n static fromJS(data: any): DepartmentPlayingFieldSessionModel {\n data = typeof data === 'object' ? data : {};\n let result = new DepartmentPlayingFieldSessionModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"departmentID\"] = this.departmentID;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"weekdayEnum\"] = this.weekdayEnum;\n data[\"weekdayName\"] = this.weekdayName;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n return data;\n }\n}\n\nexport interface IDepartmentPlayingFieldSessionModel {\n id: number;\n departmentID: number;\n playingFieldID: number;\n weekdayEnum: number;\n weekdayName: string | undefined;\n startTime: string | undefined;\n endTime: string | undefined;\n}\n\nexport class DailySummaryModel implements IDailySummaryModel {\n name!: string | undefined;\n start!: string | undefined;\n end!: string | undefined;\n events!: FieldEventModel[] | undefined;\n\n constructor(data?: IDailySummaryModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.start = _data[\"start\"];\n this.end = _data[\"end\"];\n if (Array.isArray(_data[\"events\"])) {\n this.events = [] as any;\n for (let item of _data[\"events\"])\n this.events!.push(FieldEventModel.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): DailySummaryModel {\n data = typeof data === 'object' ? data : {};\n let result = new DailySummaryModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"start\"] = this.start;\n data[\"end\"] = this.end;\n if (Array.isArray(this.events)) {\n data[\"events\"] = [];\n for (let item of this.events)\n data[\"events\"].push(item.toJSON());\n }\n return data;\n }\n}\n\nexport interface IDailySummaryModel {\n name: string | undefined;\n start: string | undefined;\n end: string | undefined;\n events: FieldEventModel[] | undefined;\n}\n\nexport class FieldEventModel implements IFieldEventModel {\n name!: string | undefined;\n start!: string | undefined;\n end!: string | undefined;\n backgroundColor!: string | undefined;\n\n constructor(data?: IFieldEventModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.name = _data[\"name\"];\n this.start = _data[\"start\"];\n this.end = _data[\"end\"];\n this.backgroundColor = _data[\"backgroundColor\"];\n }\n }\n\n static fromJS(data: any): FieldEventModel {\n data = typeof data === 'object' ? data : {};\n let result = new FieldEventModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"name\"] = this.name;\n data[\"start\"] = this.start;\n data[\"end\"] = this.end;\n data[\"backgroundColor\"] = this.backgroundColor;\n return data;\n }\n}\n\nexport interface IFieldEventModel {\n name: string | undefined;\n start: string | undefined;\n end: string | undefined;\n backgroundColor: string | undefined;\n}\n\nexport class WeeklyCalendarEventModel implements IWeeklyCalendarEventModel {\n weeklyEvents!: CalendarEventModel[][] | undefined;\n calendarTimes!: string[] | undefined;\n intervalCount!: number;\n\n constructor(data?: IWeeklyCalendarEventModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n if (Array.isArray(_data[\"weeklyEvents\"])) {\n this.weeklyEvents = [] as any;\n for (let item of _data[\"weeklyEvents\"])\n this.weeklyEvents!.push(item);\n }\n if (Array.isArray(_data[\"calendarTimes\"])) {\n this.calendarTimes = [] as any;\n for (let item of _data[\"calendarTimes\"])\n this.calendarTimes!.push(item);\n }\n this.intervalCount = _data[\"intervalCount\"];\n }\n }\n\n static fromJS(data: any): WeeklyCalendarEventModel {\n data = typeof data === 'object' ? data : {};\n let result = new WeeklyCalendarEventModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n if (Array.isArray(this.weeklyEvents)) {\n data[\"weeklyEvents\"] = [];\n for (let item of this.weeklyEvents)\n data[\"weeklyEvents\"].push(item);\n }\n if (Array.isArray(this.calendarTimes)) {\n data[\"calendarTimes\"] = [];\n for (let item of this.calendarTimes)\n data[\"calendarTimes\"].push(item);\n }\n data[\"intervalCount\"] = this.intervalCount;\n return data;\n }\n}\n\nexport interface IWeeklyCalendarEventModel {\n weeklyEvents: CalendarEventModel[][] | undefined;\n calendarTimes: string[] | undefined;\n intervalCount: number;\n}\n\nexport class CalendarEventModel implements ICalendarEventModel {\n eventTypeID!: number;\n eventID!: number;\n playingFieldID!: number;\n weekday!: number;\n startTime!: string | undefined;\n endTime!: string | undefined;\n text!: string | undefined;\n offsetX!: number;\n offsetY!: number;\n fractionX!: number;\n intervalCount!: number;\n backgroundColour!: string | undefined;\n hasMatchesSameDay!: boolean;\n zIndex!: number;\n mouseIsOver!: boolean;\n\n constructor(data?: ICalendarEventModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.eventTypeID = _data[\"eventTypeID\"];\n this.eventID = _data[\"eventID\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.weekday = _data[\"weekday\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n this.text = _data[\"text\"];\n this.offsetX = _data[\"offsetX\"];\n this.offsetY = _data[\"offsetY\"];\n this.fractionX = _data[\"fractionX\"];\n this.intervalCount = _data[\"intervalCount\"];\n this.backgroundColour = _data[\"backgroundColour\"];\n this.hasMatchesSameDay = _data[\"hasMatchesSameDay\"];\n this.zIndex = _data[\"zIndex\"];\n this.mouseIsOver = _data[\"mouseIsOver\"];\n }\n }\n\n static fromJS(data: any): CalendarEventModel {\n data = typeof data === 'object' ? data : {};\n let result = new CalendarEventModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"eventTypeID\"] = this.eventTypeID;\n data[\"eventID\"] = this.eventID;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"weekday\"] = this.weekday;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n data[\"text\"] = this.text;\n data[\"offsetX\"] = this.offsetX;\n data[\"offsetY\"] = this.offsetY;\n data[\"fractionX\"] = this.fractionX;\n data[\"intervalCount\"] = this.intervalCount;\n data[\"backgroundColour\"] = this.backgroundColour;\n data[\"hasMatchesSameDay\"] = this.hasMatchesSameDay;\n data[\"zIndex\"] = this.zIndex;\n data[\"mouseIsOver\"] = this.mouseIsOver;\n return data;\n }\n}\n\nexport interface ICalendarEventModel {\n eventTypeID: number;\n eventID: number;\n playingFieldID: number;\n weekday: number;\n startTime: string | undefined;\n endTime: string | undefined;\n text: string | undefined;\n offsetX: number;\n offsetY: number;\n fractionX: number;\n intervalCount: number;\n backgroundColour: string | undefined;\n hasMatchesSameDay: boolean;\n zIndex: number;\n mouseIsOver: boolean;\n}\n\nexport class GenderModel implements IGenderModel {\n id!: number;\n name!: string | undefined;\n\n constructor(data?: IGenderModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): GenderModel {\n data = typeof data === 'object' ? data : {};\n let result = new GenderModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface IGenderModel {\n id: number;\n name: string | undefined;\n}\n\nexport class TournamentMatchModel implements ITournamentMatchModel {\n id!: number;\n matchNumber!: string | undefined;\n externalID!: number | undefined;\n playingFieldID!: number;\n playingFieldName!: string | undefined;\n matchDate!: string | undefined;\n matchTime!: string | undefined;\n endTime!: string | undefined;\n weekdayName!: string | undefined;\n homeTeamID!: number | undefined;\n homeTeamName!: string | undefined;\n awayTeamID!: number | undefined;\n awayTeamName!: string | undefined;\n regStatusEnum!: number;\n matchResult!: string | undefined;\n isRescheduled!: boolean;\n originalMatchDate!: string | undefined;\n originalMatchTime!: string | undefined;\n originalPlayingFieldName!: string | undefined;\n rescheduledDateTime!: string | undefined;\n rescheduledByEnum!: number;\n rescheduledMatchComments!: string | undefined;\n\n constructor(data?: ITournamentMatchModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.matchNumber = _data[\"matchNumber\"];\n this.externalID = _data[\"externalID\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.matchDate = _data[\"matchDate\"];\n this.matchTime = _data[\"matchTime\"];\n this.endTime = _data[\"endTime\"];\n this.weekdayName = _data[\"weekdayName\"];\n this.homeTeamID = _data[\"homeTeamID\"];\n this.homeTeamName = _data[\"homeTeamName\"];\n this.awayTeamID = _data[\"awayTeamID\"];\n this.awayTeamName = _data[\"awayTeamName\"];\n this.regStatusEnum = _data[\"regStatusEnum\"];\n this.matchResult = _data[\"matchResult\"];\n this.isRescheduled = _data[\"isRescheduled\"];\n this.originalMatchDate = _data[\"originalMatchDate\"];\n this.originalMatchTime = _data[\"originalMatchTime\"];\n this.originalPlayingFieldName = _data[\"originalPlayingFieldName\"];\n this.rescheduledDateTime = _data[\"rescheduledDateTime\"];\n this.rescheduledByEnum = _data[\"rescheduledByEnum\"];\n this.rescheduledMatchComments = _data[\"rescheduledMatchComments\"];\n }\n }\n\n static fromJS(data: any): TournamentMatchModel {\n data = typeof data === 'object' ? data : {};\n let result = new TournamentMatchModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"matchNumber\"] = this.matchNumber;\n data[\"externalID\"] = this.externalID;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"matchDate\"] = this.matchDate;\n data[\"matchTime\"] = this.matchTime;\n data[\"endTime\"] = this.endTime;\n data[\"weekdayName\"] = this.weekdayName;\n data[\"homeTeamID\"] = this.homeTeamID;\n data[\"homeTeamName\"] = this.homeTeamName;\n data[\"awayTeamID\"] = this.awayTeamID;\n data[\"awayTeamName\"] = this.awayTeamName;\n data[\"regStatusEnum\"] = this.regStatusEnum;\n data[\"matchResult\"] = this.matchResult;\n data[\"isRescheduled\"] = this.isRescheduled;\n data[\"originalMatchDate\"] = this.originalMatchDate;\n data[\"originalMatchTime\"] = this.originalMatchTime;\n data[\"originalPlayingFieldName\"] = this.originalPlayingFieldName;\n data[\"rescheduledDateTime\"] = this.rescheduledDateTime;\n data[\"rescheduledByEnum\"] = this.rescheduledByEnum;\n data[\"rescheduledMatchComments\"] = this.rescheduledMatchComments;\n return data;\n }\n}\n\nexport interface ITournamentMatchModel {\n id: number;\n matchNumber: string | undefined;\n externalID: number | undefined;\n playingFieldID: number;\n playingFieldName: string | undefined;\n matchDate: string | undefined;\n matchTime: string | undefined;\n endTime: string | undefined;\n weekdayName: string | undefined;\n homeTeamID: number | undefined;\n homeTeamName: string | undefined;\n awayTeamID: number | undefined;\n awayTeamName: string | undefined;\n regStatusEnum: number;\n matchResult: string | undefined;\n isRescheduled: boolean;\n originalMatchDate: string | undefined;\n originalMatchTime: string | undefined;\n originalPlayingFieldName: string | undefined;\n rescheduledDateTime: string | undefined;\n rescheduledByEnum: number;\n rescheduledMatchComments: string | undefined;\n}\n\nexport class DropDownModel implements IDropDownModel {\n id!: number;\n name!: string | undefined;\n\n constructor(data?: IDropDownModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): DropDownModel {\n data = typeof data === 'object' ? data : {};\n let result = new DropDownModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface IDropDownModel {\n id: number;\n name: string | undefined;\n}\n\nexport class PersonRoleModel implements IPersonRoleModel {\n personID!: number;\n name!: string | undefined;\n title!: string | undefined;\n email!: string | undefined;\n phoneNumber!: string | undefined;\n\n constructor(data?: IPersonRoleModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.personID = _data[\"personID\"];\n this.name = _data[\"name\"];\n this.title = _data[\"title\"];\n this.email = _data[\"email\"];\n this.phoneNumber = _data[\"phoneNumber\"];\n }\n }\n\n static fromJS(data: any): PersonRoleModel {\n data = typeof data === 'object' ? data : {};\n let result = new PersonRoleModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"personID\"] = this.personID;\n data[\"name\"] = this.name;\n data[\"title\"] = this.title;\n data[\"email\"] = this.email;\n data[\"phoneNumber\"] = this.phoneNumber;\n return data;\n }\n}\n\nexport interface IPersonRoleModel {\n personID: number;\n name: string | undefined;\n title: string | undefined;\n email: string | undefined;\n phoneNumber: string | undefined;\n}\n\nexport class PlanTemplateModel implements IPlanTemplateModel {\n id!: number;\n departmentID!: number;\n departmentName!: string | undefined;\n name!: string | undefined;\n startDate!: string | undefined;\n endDate!: string | undefined;\n period!: string | undefined;\n seasonID!: number;\n calendarStartTime!: string | undefined;\n calendarEndTime!: string | undefined;\n calendarWeekendStartTime!: string | undefined;\n calendarWeekendEndTime!: string | undefined;\n defaultPlayingFieldID!: number | undefined;\n comments!: string | undefined;\n isReady!: boolean;\n\n constructor(data?: IPlanTemplateModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.departmentID = _data[\"departmentID\"];\n this.departmentName = _data[\"departmentName\"];\n this.name = _data[\"name\"];\n this.startDate = _data[\"startDate\"];\n this.endDate = _data[\"endDate\"];\n this.period = _data[\"period\"];\n this.seasonID = _data[\"seasonID\"];\n this.calendarStartTime = _data[\"calendarStartTime\"];\n this.calendarEndTime = _data[\"calendarEndTime\"];\n this.calendarWeekendStartTime = _data[\"calendarWeekendStartTime\"];\n this.calendarWeekendEndTime = _data[\"calendarWeekendEndTime\"];\n this.defaultPlayingFieldID = _data[\"defaultPlayingFieldID\"];\n this.comments = _data[\"comments\"];\n this.isReady = _data[\"isReady\"];\n }\n }\n\n static fromJS(data: any): PlanTemplateModel {\n data = typeof data === 'object' ? data : {};\n let result = new PlanTemplateModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"departmentID\"] = this.departmentID;\n data[\"departmentName\"] = this.departmentName;\n data[\"name\"] = this.name;\n data[\"startDate\"] = this.startDate;\n data[\"endDate\"] = this.endDate;\n data[\"period\"] = this.period;\n data[\"seasonID\"] = this.seasonID;\n data[\"calendarStartTime\"] = this.calendarStartTime;\n data[\"calendarEndTime\"] = this.calendarEndTime;\n data[\"calendarWeekendStartTime\"] = this.calendarWeekendStartTime;\n data[\"calendarWeekendEndTime\"] = this.calendarWeekendEndTime;\n data[\"defaultPlayingFieldID\"] = this.defaultPlayingFieldID;\n data[\"comments\"] = this.comments;\n data[\"isReady\"] = this.isReady;\n return data;\n }\n}\n\nexport interface IPlanTemplateModel {\n id: number;\n departmentID: number;\n departmentName: string | undefined;\n name: string | undefined;\n startDate: string | undefined;\n endDate: string | undefined;\n period: string | undefined;\n seasonID: number;\n calendarStartTime: string | undefined;\n calendarEndTime: string | undefined;\n calendarWeekendStartTime: string | undefined;\n calendarWeekendEndTime: string | undefined;\n defaultPlayingFieldID: number | undefined;\n comments: string | undefined;\n isReady: boolean;\n}\n\nexport class WeekdayModel implements IWeekdayModel {\n id!: number;\n name!: string | undefined;\n\n constructor(data?: IWeekdayModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): WeekdayModel {\n data = typeof data === 'object' ? data : {};\n let result = new WeekdayModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface IWeekdayModel {\n id: number;\n name: string | undefined;\n}\n\nexport class EventModel implements IEventModel {\n id!: number;\n eventTypeEnum!: number;\n eventTypeName!: string | undefined;\n eventID!: number;\n eventName!: string | undefined;\n assigneeID!: string | undefined;\n playingFieldID!: number;\n playingFieldName!: string | undefined;\n weekdayEnum!: number;\n startTime!: string | undefined;\n endTime!: string | undefined;\n\n constructor(data?: IEventModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.eventTypeEnum = _data[\"eventTypeEnum\"];\n this.eventTypeName = _data[\"eventTypeName\"];\n this.eventID = _data[\"eventID\"];\n this.eventName = _data[\"eventName\"];\n this.assigneeID = _data[\"assigneeID\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.weekdayEnum = _data[\"weekdayEnum\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n }\n }\n\n static fromJS(data: any): EventModel {\n data = typeof data === 'object' ? data : {};\n let result = new EventModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"eventTypeEnum\"] = this.eventTypeEnum;\n data[\"eventTypeName\"] = this.eventTypeName;\n data[\"eventID\"] = this.eventID;\n data[\"eventName\"] = this.eventName;\n data[\"assigneeID\"] = this.assigneeID;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"weekdayEnum\"] = this.weekdayEnum;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n return data;\n }\n}\n\nexport interface IEventModel {\n id: number;\n eventTypeEnum: number;\n eventTypeName: string | undefined;\n eventID: number;\n eventName: string | undefined;\n assigneeID: string | undefined;\n playingFieldID: number;\n playingFieldName: string | undefined;\n weekdayEnum: number;\n startTime: string | undefined;\n endTime: string | undefined;\n}\n\nexport class PlanTemplateSessionModel implements IPlanTemplateSessionModel {\n id!: number;\n planTemplateID!: number;\n planTemplateName!: string | undefined;\n playingFieldID!: number;\n playingFieldName!: string | undefined;\n assigneeID!: number;\n assigneeGuid!: string | undefined;\n assigneType!: AssigneeTypeEnum;\n assigneeName!: string | undefined;\n assigneeStartYear!: number | undefined;\n playerCount!: number | undefined;\n weekdayEnum!: number;\n weekdayName!: string | undefined;\n startTime!: string | undefined;\n endTime!: string | undefined;\n virtualStartDateTime!: string | undefined;\n virtualEndDateTime!: string | undefined;\n\n constructor(data?: IPlanTemplateSessionModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.planTemplateID = _data[\"planTemplateID\"];\n this.planTemplateName = _data[\"planTemplateName\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.assigneeID = _data[\"assigneeID\"];\n this.assigneeGuid = _data[\"assigneeGuid\"];\n this.assigneType = _data[\"assigneType\"];\n this.assigneeName = _data[\"assigneeName\"];\n this.assigneeStartYear = _data[\"assigneeStartYear\"];\n this.playerCount = _data[\"playerCount\"];\n this.weekdayEnum = _data[\"weekdayEnum\"];\n this.weekdayName = _data[\"weekdayName\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n this.virtualStartDateTime = _data[\"virtualStartDateTime\"];\n this.virtualEndDateTime = _data[\"virtualEndDateTime\"];\n }\n }\n\n static fromJS(data: any): PlanTemplateSessionModel {\n data = typeof data === 'object' ? data : {};\n let result = new PlanTemplateSessionModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"planTemplateID\"] = this.planTemplateID;\n data[\"planTemplateName\"] = this.planTemplateName;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"assigneeID\"] = this.assigneeID;\n data[\"assigneeGuid\"] = this.assigneeGuid;\n data[\"assigneType\"] = this.assigneType;\n data[\"assigneeName\"] = this.assigneeName;\n data[\"assigneeStartYear\"] = this.assigneeStartYear;\n data[\"playerCount\"] = this.playerCount;\n data[\"weekdayEnum\"] = this.weekdayEnum;\n data[\"weekdayName\"] = this.weekdayName;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n data[\"virtualStartDateTime\"] = this.virtualStartDateTime;\n data[\"virtualEndDateTime\"] = this.virtualEndDateTime;\n return data;\n }\n}\n\nexport interface IPlanTemplateSessionModel {\n id: number;\n planTemplateID: number;\n planTemplateName: string | undefined;\n playingFieldID: number;\n playingFieldName: string | undefined;\n assigneeID: number;\n assigneeGuid: string | undefined;\n assigneType: AssigneeTypeEnum;\n assigneeName: string | undefined;\n assigneeStartYear: number | undefined;\n playerCount: number | undefined;\n weekdayEnum: number;\n weekdayName: string | undefined;\n startTime: string | undefined;\n endTime: string | undefined;\n virtualStartDateTime: string | undefined;\n virtualEndDateTime: string | undefined;\n}\n\nexport enum AssigneeTypeEnum {\n Team = 1,\n TeamClass = 2,\n}\n\nexport class PlanTemplateTeamRequestModel implements IPlanTemplateTeamRequestModel {\n id!: number;\n planTemplateID!: number;\n teamID!: number;\n teamName!: string | undefined;\n teamStartYear!: number | undefined;\n sessionCount!: number | undefined;\n assignedSessionCount!: number;\n comments!: string | undefined;\n\n constructor(data?: IPlanTemplateTeamRequestModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.planTemplateID = _data[\"planTemplateID\"];\n this.teamID = _data[\"teamID\"];\n this.teamName = _data[\"teamName\"];\n this.teamStartYear = _data[\"teamStartYear\"];\n this.sessionCount = _data[\"sessionCount\"];\n this.assignedSessionCount = _data[\"assignedSessionCount\"];\n this.comments = _data[\"comments\"];\n }\n }\n\n static fromJS(data: any): PlanTemplateTeamRequestModel {\n data = typeof data === 'object' ? data : {};\n let result = new PlanTemplateTeamRequestModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"planTemplateID\"] = this.planTemplateID;\n data[\"teamID\"] = this.teamID;\n data[\"teamName\"] = this.teamName;\n data[\"teamStartYear\"] = this.teamStartYear;\n data[\"sessionCount\"] = this.sessionCount;\n data[\"assignedSessionCount\"] = this.assignedSessionCount;\n data[\"comments\"] = this.comments;\n return data;\n }\n}\n\nexport interface IPlanTemplateTeamRequestModel {\n id: number;\n planTemplateID: number;\n teamID: number;\n teamName: string | undefined;\n teamStartYear: number | undefined;\n sessionCount: number | undefined;\n assignedSessionCount: number;\n comments: string | undefined;\n}\n\nexport class PlanTemplateTenantSessionModel implements IPlanTemplateTenantSessionModel {\n id!: number;\n playingFieldID!: number;\n tenantID!: number;\n weekdayEnum!: number;\n startTime!: string | undefined;\n endTime!: string | undefined;\n\n constructor(data?: IPlanTemplateTenantSessionModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.tenantID = _data[\"tenantID\"];\n this.weekdayEnum = _data[\"weekdayEnum\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n }\n }\n\n static fromJS(data: any): PlanTemplateTenantSessionModel {\n data = typeof data === 'object' ? data : {};\n let result = new PlanTemplateTenantSessionModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"tenantID\"] = this.tenantID;\n data[\"weekdayEnum\"] = this.weekdayEnum;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n return data;\n }\n}\n\nexport interface IPlanTemplateTenantSessionModel {\n id: number;\n playingFieldID: number;\n tenantID: number;\n weekdayEnum: number;\n startTime: string | undefined;\n endTime: string | undefined;\n}\n\nexport class PlayingFieldModel implements IPlayingFieldModel {\n id!: number;\n trainingFacilityID!: number;\n parentID!: number | undefined;\n name!: string | undefined;\n externalID!: number | undefined;\n fieldLength!: number | undefined;\n fieldWidth!: number | undefined;\n surfaceEnum!: number | undefined;\n ownerDepartmentID!: number | undefined;\n children!: PlayingFieldModel[] | undefined;\n\n constructor(data?: IPlayingFieldModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.trainingFacilityID = _data[\"trainingFacilityID\"];\n this.parentID = _data[\"parentID\"];\n this.name = _data[\"name\"];\n this.externalID = _data[\"externalID\"];\n this.fieldLength = _data[\"fieldLength\"];\n this.fieldWidth = _data[\"fieldWidth\"];\n this.surfaceEnum = _data[\"surfaceEnum\"];\n this.ownerDepartmentID = _data[\"ownerDepartmentID\"];\n if (Array.isArray(_data[\"children\"])) {\n this.children = [] as any;\n for (let item of _data[\"children\"])\n this.children!.push(PlayingFieldModel.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): PlayingFieldModel {\n data = typeof data === 'object' ? data : {};\n let result = new PlayingFieldModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"trainingFacilityID\"] = this.trainingFacilityID;\n data[\"parentID\"] = this.parentID;\n data[\"name\"] = this.name;\n data[\"externalID\"] = this.externalID;\n data[\"fieldLength\"] = this.fieldLength;\n data[\"fieldWidth\"] = this.fieldWidth;\n data[\"surfaceEnum\"] = this.surfaceEnum;\n data[\"ownerDepartmentID\"] = this.ownerDepartmentID;\n if (Array.isArray(this.children)) {\n data[\"children\"] = [];\n for (let item of this.children)\n data[\"children\"].push(item.toJSON());\n }\n return data;\n }\n}\n\nexport interface IPlayingFieldModel {\n id: number;\n trainingFacilityID: number;\n parentID: number | undefined;\n name: string | undefined;\n externalID: number | undefined;\n fieldLength: number | undefined;\n fieldWidth: number | undefined;\n surfaceEnum: number | undefined;\n ownerDepartmentID: number | undefined;\n children: PlayingFieldModel[] | undefined;\n}\n\nexport class AssignedPlayingFieldModel implements IAssignedPlayingFieldModel {\n id!: number;\n playingFieldID!: number;\n playingFieldName!: string | undefined;\n departmentID!: number;\n departmentName!: string | undefined;\n startDate!: string | undefined;\n endDate!: string | undefined;\n period!: string | undefined;\n comments!: string | undefined;\n\n constructor(data?: IAssignedPlayingFieldModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.departmentID = _data[\"departmentID\"];\n this.departmentName = _data[\"departmentName\"];\n this.startDate = _data[\"startDate\"];\n this.endDate = _data[\"endDate\"];\n this.period = _data[\"period\"];\n this.comments = _data[\"comments\"];\n }\n }\n\n static fromJS(data: any): AssignedPlayingFieldModel {\n data = typeof data === 'object' ? data : {};\n let result = new AssignedPlayingFieldModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"departmentID\"] = this.departmentID;\n data[\"departmentName\"] = this.departmentName;\n data[\"startDate\"] = this.startDate;\n data[\"endDate\"] = this.endDate;\n data[\"period\"] = this.period;\n data[\"comments\"] = this.comments;\n return data;\n }\n}\n\nexport interface IAssignedPlayingFieldModel {\n id: number;\n playingFieldID: number;\n playingFieldName: string | undefined;\n departmentID: number;\n departmentName: string | undefined;\n startDate: string | undefined;\n endDate: string | undefined;\n period: string | undefined;\n comments: string | undefined;\n}\n\nexport class SurfaceModel implements ISurfaceModel {\n id!: number;\n name!: string | undefined;\n\n constructor(data?: ISurfaceModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): SurfaceModel {\n data = typeof data === 'object' ? data : {};\n let result = new SurfaceModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface ISurfaceModel {\n id: number;\n name: string | undefined;\n}\n\nexport class WeeklyPlanSessionModel implements IWeeklyPlanSessionModel {\n id!: number;\n weeklyPlanID!: number;\n playingFieldID!: number;\n playingFieldName!: string | undefined;\n sessionDate!: string | undefined;\n weekdayEnum!: number;\n weekdayName!: string | undefined;\n assigneeID!: number;\n assigneeGuid!: string | undefined;\n assigneeType!: AssigneeTypeEnum;\n assigneeName!: string | undefined;\n startTime!: string | undefined;\n endTime!: string | undefined;\n conflictsExist!: boolean;\n\n constructor(data?: IWeeklyPlanSessionModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.weeklyPlanID = _data[\"weeklyPlanID\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.sessionDate = _data[\"sessionDate\"];\n this.weekdayEnum = _data[\"weekdayEnum\"];\n this.weekdayName = _data[\"weekdayName\"];\n this.assigneeID = _data[\"assigneeID\"];\n this.assigneeGuid = _data[\"assigneeGuid\"];\n this.assigneeType = _data[\"assigneeType\"];\n this.assigneeName = _data[\"assigneeName\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n this.conflictsExist = _data[\"conflictsExist\"];\n }\n }\n\n static fromJS(data: any): WeeklyPlanSessionModel {\n data = typeof data === 'object' ? data : {};\n let result = new WeeklyPlanSessionModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"weeklyPlanID\"] = this.weeklyPlanID;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"sessionDate\"] = this.sessionDate;\n data[\"weekdayEnum\"] = this.weekdayEnum;\n data[\"weekdayName\"] = this.weekdayName;\n data[\"assigneeID\"] = this.assigneeID;\n data[\"assigneeGuid\"] = this.assigneeGuid;\n data[\"assigneeType\"] = this.assigneeType;\n data[\"assigneeName\"] = this.assigneeName;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n data[\"conflictsExist\"] = this.conflictsExist;\n return data;\n }\n}\n\nexport interface IWeeklyPlanSessionModel {\n id: number;\n weeklyPlanID: number;\n playingFieldID: number;\n playingFieldName: string | undefined;\n sessionDate: string | undefined;\n weekdayEnum: number;\n weekdayName: string | undefined;\n assigneeID: number;\n assigneeGuid: string | undefined;\n assigneeType: AssigneeTypeEnum;\n assigneeName: string | undefined;\n startTime: string | undefined;\n endTime: string | undefined;\n conflictsExist: boolean;\n}\n\nexport class RegionModel implements IRegionModel {\n id!: number;\n name!: string | undefined;\n sportEnum!: number;\n\n constructor(data?: IRegionModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n this.sportEnum = _data[\"sportEnum\"];\n }\n }\n\n static fromJS(data: any): RegionModel {\n data = typeof data === 'object' ? data : {};\n let result = new RegionModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n data[\"sportEnum\"] = this.sportEnum;\n return data;\n }\n}\n\nexport interface IRegionModel {\n id: number;\n name: string | undefined;\n sportEnum: number;\n}\n\nexport class SeasonModel implements ISeasonModel {\n id!: number;\n regionID!: number;\n name!: string | undefined;\n startDate!: moment.Moment;\n endDate!: moment.Moment;\n externalID!: number;\n\n constructor(data?: ISeasonModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.regionID = _data[\"regionID\"];\n this.name = _data[\"name\"];\n this.startDate = _data[\"startDate\"] ? moment.parseZone(_data[\"startDate\"].toString()) : undefined;\n this.endDate = _data[\"endDate\"] ? moment.parseZone(_data[\"endDate\"].toString()) : undefined;\n this.externalID = _data[\"externalID\"];\n }\n }\n\n static fromJS(data: any): SeasonModel {\n data = typeof data === 'object' ? data : {};\n let result = new SeasonModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"regionID\"] = this.regionID;\n data[\"name\"] = this.name;\n data[\"startDate\"] = this.startDate ? this.startDate.toISOString(true) : undefined;\n data[\"endDate\"] = this.endDate ? this.endDate.toISOString(true) : undefined;\n data[\"externalID\"] = this.externalID;\n return data;\n }\n}\n\nexport interface ISeasonModel {\n id: number;\n regionID: number;\n name: string | undefined;\n startDate: moment.Moment;\n endDate: moment.Moment;\n externalID: number;\n}\n\nexport class MatchSummaryModel implements IMatchSummaryModel {\n matchCount!: number;\n matchSummaryItems!: MatchSummaryItemModel[] | undefined;\n\n constructor(data?: IMatchSummaryModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.matchCount = _data[\"matchCount\"];\n if (Array.isArray(_data[\"matchSummaryItems\"])) {\n this.matchSummaryItems = [] as any;\n for (let item of _data[\"matchSummaryItems\"])\n this.matchSummaryItems!.push(MatchSummaryItemModel.fromJS(item));\n }\n }\n }\n\n static fromJS(data: any): MatchSummaryModel {\n data = typeof data === 'object' ? data : {};\n let result = new MatchSummaryModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"matchCount\"] = this.matchCount;\n if (Array.isArray(this.matchSummaryItems)) {\n data[\"matchSummaryItems\"] = [];\n for (let item of this.matchSummaryItems)\n data[\"matchSummaryItems\"].push(item.toJSON());\n }\n return data;\n }\n}\n\nexport interface IMatchSummaryModel {\n matchCount: number;\n matchSummaryItems: MatchSummaryItemModel[] | undefined;\n}\n\nexport class MatchSummaryItemModel implements IMatchSummaryItemModel {\n teamID!: number;\n teamName!: string | undefined;\n tournamentTeamCount!: number;\n matchCount!: number;\n\n constructor(data?: IMatchSummaryItemModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.teamID = _data[\"teamID\"];\n this.teamName = _data[\"teamName\"];\n this.tournamentTeamCount = _data[\"tournamentTeamCount\"];\n this.matchCount = _data[\"matchCount\"];\n }\n }\n\n static fromJS(data: any): MatchSummaryItemModel {\n data = typeof data === 'object' ? data : {};\n let result = new MatchSummaryItemModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"teamID\"] = this.teamID;\n data[\"teamName\"] = this.teamName;\n data[\"tournamentTeamCount\"] = this.tournamentTeamCount;\n data[\"matchCount\"] = this.matchCount;\n return data;\n }\n}\n\nexport interface IMatchSummaryItemModel {\n teamID: number;\n teamName: string | undefined;\n tournamentTeamCount: number;\n matchCount: number;\n}\n\nexport class ActivityModel implements IActivityModel {\n eventTypeID!: number;\n eventID!: number;\n activityType!: string | undefined;\n description!: string | undefined;\n activitySortDate!: moment.Moment;\n activityDate!: string | undefined;\n timeInterval!: string | undefined;\n weekdayName!: string | undefined;\n playingFieldName!: string | undefined;\n conflict!: boolean;\n\n constructor(data?: IActivityModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.eventTypeID = _data[\"eventTypeID\"];\n this.eventID = _data[\"eventID\"];\n this.activityType = _data[\"activityType\"];\n this.description = _data[\"description\"];\n this.activitySortDate = _data[\"activitySortDate\"] ? moment.parseZone(_data[\"activitySortDate\"].toString()) : undefined;\n this.activityDate = _data[\"activityDate\"];\n this.timeInterval = _data[\"timeInterval\"];\n this.weekdayName = _data[\"weekdayName\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.conflict = _data[\"conflict\"];\n }\n }\n\n static fromJS(data: any): ActivityModel {\n data = typeof data === 'object' ? data : {};\n let result = new ActivityModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"eventTypeID\"] = this.eventTypeID;\n data[\"eventID\"] = this.eventID;\n data[\"activityType\"] = this.activityType;\n data[\"description\"] = this.description;\n data[\"activitySortDate\"] = this.activitySortDate ? this.activitySortDate.toISOString(true) : undefined;\n data[\"activityDate\"] = this.activityDate;\n data[\"timeInterval\"] = this.timeInterval;\n data[\"weekdayName\"] = this.weekdayName;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"conflict\"] = this.conflict;\n return data;\n }\n}\n\nexport interface IActivityModel {\n eventTypeID: number;\n eventID: number;\n activityType: string | undefined;\n description: string | undefined;\n activitySortDate: moment.Moment;\n activityDate: string | undefined;\n timeInterval: string | undefined;\n weekdayName: string | undefined;\n playingFieldName: string | undefined;\n conflict: boolean;\n}\n\nexport class TeamModel implements ITeamModel {\n id!: number;\n clubID!: number;\n clubName!: string | undefined;\n departmentID!: number;\n departmentName!: string | undefined;\n seasonID!: number;\n seasonName!: string | undefined;\n name!: string | undefined;\n startYear!: number | undefined;\n endYear!: number | undefined;\n playerCount!: number | undefined;\n comments!: string | undefined;\n genderEnum!: number | undefined;\n genderName!: string | undefined;\n hasTeamClasses!: boolean;\n playerCountDisabled!: boolean;\n backColor!: string | undefined;\n\n constructor(data?: ITeamModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.clubID = _data[\"clubID\"];\n this.clubName = _data[\"clubName\"];\n this.departmentID = _data[\"departmentID\"];\n this.departmentName = _data[\"departmentName\"];\n this.seasonID = _data[\"seasonID\"];\n this.seasonName = _data[\"seasonName\"];\n this.name = _data[\"name\"];\n this.startYear = _data[\"startYear\"];\n this.endYear = _data[\"endYear\"];\n this.playerCount = _data[\"playerCount\"];\n this.comments = _data[\"comments\"];\n this.genderEnum = _data[\"genderEnum\"];\n this.genderName = _data[\"genderName\"];\n this.hasTeamClasses = _data[\"hasTeamClasses\"];\n this.playerCountDisabled = _data[\"playerCountDisabled\"];\n this.backColor = _data[\"backColor\"];\n }\n }\n\n static fromJS(data: any): TeamModel {\n data = typeof data === 'object' ? data : {};\n let result = new TeamModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"clubID\"] = this.clubID;\n data[\"clubName\"] = this.clubName;\n data[\"departmentID\"] = this.departmentID;\n data[\"departmentName\"] = this.departmentName;\n data[\"seasonID\"] = this.seasonID;\n data[\"seasonName\"] = this.seasonName;\n data[\"name\"] = this.name;\n data[\"startYear\"] = this.startYear;\n data[\"endYear\"] = this.endYear;\n data[\"playerCount\"] = this.playerCount;\n data[\"comments\"] = this.comments;\n data[\"genderEnum\"] = this.genderEnum;\n data[\"genderName\"] = this.genderName;\n data[\"hasTeamClasses\"] = this.hasTeamClasses;\n data[\"playerCountDisabled\"] = this.playerCountDisabled;\n data[\"backColor\"] = this.backColor;\n return data;\n }\n}\n\nexport interface ITeamModel {\n id: number;\n clubID: number;\n clubName: string | undefined;\n departmentID: number;\n departmentName: string | undefined;\n seasonID: number;\n seasonName: string | undefined;\n name: string | undefined;\n startYear: number | undefined;\n endYear: number | undefined;\n playerCount: number | undefined;\n comments: string | undefined;\n genderEnum: number | undefined;\n genderName: string | undefined;\n hasTeamClasses: boolean;\n playerCountDisabled: boolean;\n backColor: string | undefined;\n}\n\nexport class TournamentTeamModel implements ITournamentTeamModel {\n id!: number;\n name!: string | undefined;\n teamID!: number | undefined;\n teamName!: string | undefined;\n teamStartYear!: number | undefined;\n teamEndYear!: number | undefined;\n departmentID!: number;\n seasonID!: number;\n\n constructor(data?: ITournamentTeamModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n this.teamID = _data[\"teamID\"];\n this.teamName = _data[\"teamName\"];\n this.teamStartYear = _data[\"teamStartYear\"];\n this.teamEndYear = _data[\"teamEndYear\"];\n this.departmentID = _data[\"departmentID\"];\n this.seasonID = _data[\"seasonID\"];\n }\n }\n\n static fromJS(data: any): TournamentTeamModel {\n data = typeof data === 'object' ? data : {};\n let result = new TournamentTeamModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n data[\"teamID\"] = this.teamID;\n data[\"teamName\"] = this.teamName;\n data[\"teamStartYear\"] = this.teamStartYear;\n data[\"teamEndYear\"] = this.teamEndYear;\n data[\"departmentID\"] = this.departmentID;\n data[\"seasonID\"] = this.seasonID;\n return data;\n }\n}\n\nexport interface ITournamentTeamModel {\n id: number;\n name: string | undefined;\n teamID: number | undefined;\n teamName: string | undefined;\n teamStartYear: number | undefined;\n teamEndYear: number | undefined;\n departmentID: number;\n seasonID: number;\n}\n\nexport class TeamClassModel implements ITeamClassModel {\n id!: number;\n teamID!: number;\n teamName!: string | undefined;\n classYear!: number;\n className!: string | undefined;\n playerCount!: number | undefined;\n\n constructor(data?: ITeamClassModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.teamID = _data[\"teamID\"];\n this.teamName = _data[\"teamName\"];\n this.classYear = _data[\"classYear\"];\n this.className = _data[\"className\"];\n this.playerCount = _data[\"playerCount\"];\n }\n }\n\n static fromJS(data: any): TeamClassModel {\n data = typeof data === 'object' ? data : {};\n let result = new TeamClassModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"teamID\"] = this.teamID;\n data[\"teamName\"] = this.teamName;\n data[\"classYear\"] = this.classYear;\n data[\"className\"] = this.className;\n data[\"playerCount\"] = this.playerCount;\n return data;\n }\n}\n\nexport interface ITeamClassModel {\n id: number;\n teamID: number;\n teamName: string | undefined;\n classYear: number;\n className: string | undefined;\n playerCount: number | undefined;\n}\n\nexport class TenantModel implements ITenantModel {\n id!: number;\n name!: string | undefined;\n\n constructor(data?: ITenantModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n }\n }\n\n static fromJS(data: any): TenantModel {\n data = typeof data === 'object' ? data : {};\n let result = new TenantModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n return data;\n }\n}\n\nexport interface ITenantModel {\n id: number;\n name: string | undefined;\n}\n\nexport class TrainingFacilityModel implements ITrainingFacilityModel {\n id!: number;\n clubID!: number;\n name!: string | undefined;\n externalID!: number | undefined;\n\n constructor(data?: ITrainingFacilityModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.clubID = _data[\"clubID\"];\n this.name = _data[\"name\"];\n this.externalID = _data[\"externalID\"];\n }\n }\n\n static fromJS(data: any): TrainingFacilityModel {\n data = typeof data === 'object' ? data : {};\n let result = new TrainingFacilityModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"clubID\"] = this.clubID;\n data[\"name\"] = this.name;\n data[\"externalID\"] = this.externalID;\n return data;\n }\n}\n\nexport interface ITrainingFacilityModel {\n id: number;\n clubID: number;\n name: string | undefined;\n externalID: number | undefined;\n}\n\nexport class UserModel implements IUserModel {\n id!: number;\n userName!: string | undefined;\n fullName!: string | undefined;\n lastName!: string | undefined;\n firstName!: string | undefined;\n isLoggedOn!: boolean;\n isApproved!: boolean;\n departmentID!: number | undefined;\n clubID!: number | undefined;\n clubName!: string | undefined;\n departmentName!: string | undefined;\n userRoleEnumID!: UserRoleEnumModel | undefined;\n\n constructor(data?: IUserModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.userName = _data[\"userName\"];\n this.fullName = _data[\"fullName\"];\n this.lastName = _data[\"lastName\"];\n this.firstName = _data[\"firstName\"];\n this.isLoggedOn = _data[\"isLoggedOn\"];\n this.isApproved = _data[\"isApproved\"];\n this.departmentID = _data[\"departmentID\"];\n this.clubID = _data[\"clubID\"];\n this.clubName = _data[\"clubName\"];\n this.departmentName = _data[\"departmentName\"];\n this.userRoleEnumID = _data[\"userRoleEnumID\"];\n }\n }\n\n static fromJS(data: any): UserModel {\n data = typeof data === 'object' ? data : {};\n let result = new UserModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"userName\"] = this.userName;\n data[\"fullName\"] = this.fullName;\n data[\"lastName\"] = this.lastName;\n data[\"firstName\"] = this.firstName;\n data[\"isLoggedOn\"] = this.isLoggedOn;\n data[\"isApproved\"] = this.isApproved;\n data[\"departmentID\"] = this.departmentID;\n data[\"clubID\"] = this.clubID;\n data[\"clubName\"] = this.clubName;\n data[\"departmentName\"] = this.departmentName;\n data[\"userRoleEnumID\"] = this.userRoleEnumID;\n return data;\n }\n}\n\nexport interface IUserModel {\n id: number;\n userName: string | undefined;\n fullName: string | undefined;\n lastName: string | undefined;\n firstName: string | undefined;\n isLoggedOn: boolean;\n isApproved: boolean;\n departmentID: number | undefined;\n clubID: number | undefined;\n clubName: string | undefined;\n departmentName: string | undefined;\n userRoleEnumID: UserRoleEnumModel | undefined;\n}\n\nexport enum UserRoleEnumModel {\n Admin = 1,\n Reader = 2,\n Applicant = 3,\n AuthorisedButNoRole = 4,\n}\n\nexport class UserRoleModel implements IUserRoleModel {\n id!: number;\n clubID!: number;\n clubName!: string | undefined;\n departmentID!: number;\n departmentName!: string | undefined;\n userRoleEnum!: number;\n userRoleName!: string | undefined;\n userID!: number;\n userFullName!: string | undefined;\n createdDateTime!: string | undefined;\n createdByUser!: string | undefined;\n updatedDateTime!: string | undefined;\n updatedByUser!: string | undefined;\n lastAccessedDateTime!: string | undefined;\n isAnonymous!: boolean;\n\n constructor(data?: IUserRoleModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.clubID = _data[\"clubID\"];\n this.clubName = _data[\"clubName\"];\n this.departmentID = _data[\"departmentID\"];\n this.departmentName = _data[\"departmentName\"];\n this.userRoleEnum = _data[\"userRoleEnum\"];\n this.userRoleName = _data[\"userRoleName\"];\n this.userID = _data[\"userID\"];\n this.userFullName = _data[\"userFullName\"];\n this.createdDateTime = _data[\"createdDateTime\"];\n this.createdByUser = _data[\"createdByUser\"];\n this.updatedDateTime = _data[\"updatedDateTime\"];\n this.updatedByUser = _data[\"updatedByUser\"];\n this.lastAccessedDateTime = _data[\"lastAccessedDateTime\"];\n this.isAnonymous = _data[\"isAnonymous\"];\n }\n }\n\n static fromJS(data: any): UserRoleModel {\n data = typeof data === 'object' ? data : {};\n let result = new UserRoleModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"clubID\"] = this.clubID;\n data[\"clubName\"] = this.clubName;\n data[\"departmentID\"] = this.departmentID;\n data[\"departmentName\"] = this.departmentName;\n data[\"userRoleEnum\"] = this.userRoleEnum;\n data[\"userRoleName\"] = this.userRoleName;\n data[\"userID\"] = this.userID;\n data[\"userFullName\"] = this.userFullName;\n data[\"createdDateTime\"] = this.createdDateTime;\n data[\"createdByUser\"] = this.createdByUser;\n data[\"updatedDateTime\"] = this.updatedDateTime;\n data[\"updatedByUser\"] = this.updatedByUser;\n data[\"lastAccessedDateTime\"] = this.lastAccessedDateTime;\n data[\"isAnonymous\"] = this.isAnonymous;\n return data;\n }\n}\n\nexport interface IUserRoleModel {\n id: number;\n clubID: number;\n clubName: string | undefined;\n departmentID: number;\n departmentName: string | undefined;\n userRoleEnum: number;\n userRoleName: string | undefined;\n userID: number;\n userFullName: string | undefined;\n createdDateTime: string | undefined;\n createdByUser: string | undefined;\n updatedDateTime: string | undefined;\n updatedByUser: string | undefined;\n lastAccessedDateTime: string | undefined;\n isAnonymous: boolean;\n}\n\nexport class UserTeamModel implements IUserTeamModel {\n id!: number;\n userID!: number;\n teamID!: string | undefined;\n teamName!: string | undefined;\n seasonName!: string | undefined;\n\n constructor(data?: IUserTeamModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.userID = _data[\"userID\"];\n this.teamID = _data[\"teamID\"];\n this.teamName = _data[\"teamName\"];\n this.seasonName = _data[\"seasonName\"];\n }\n }\n\n static fromJS(data: any): UserTeamModel {\n data = typeof data === 'object' ? data : {};\n let result = new UserTeamModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"userID\"] = this.userID;\n data[\"teamID\"] = this.teamID;\n data[\"teamName\"] = this.teamName;\n data[\"seasonName\"] = this.seasonName;\n return data;\n }\n}\n\nexport interface IUserTeamModel {\n id: number;\n userID: number;\n teamID: string | undefined;\n teamName: string | undefined;\n seasonName: string | undefined;\n}\n\nexport class WeeklyPlanModel implements IWeeklyPlanModel {\n id!: number;\n name!: string | undefined;\n startDate!: string | undefined;\n endDate!: string | undefined;\n period!: string | undefined;\n comments!: string | undefined;\n allowPopulate!: boolean;\n\n constructor(data?: IWeeklyPlanModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.name = _data[\"name\"];\n this.startDate = _data[\"startDate\"];\n this.endDate = _data[\"endDate\"];\n this.period = _data[\"period\"];\n this.comments = _data[\"comments\"];\n this.allowPopulate = _data[\"allowPopulate\"];\n }\n }\n\n static fromJS(data: any): WeeklyPlanModel {\n data = typeof data === 'object' ? data : {};\n let result = new WeeklyPlanModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"name\"] = this.name;\n data[\"startDate\"] = this.startDate;\n data[\"endDate\"] = this.endDate;\n data[\"period\"] = this.period;\n data[\"comments\"] = this.comments;\n data[\"allowPopulate\"] = this.allowPopulate;\n return data;\n }\n}\n\nexport interface IWeeklyPlanModel {\n id: number;\n name: string | undefined;\n startDate: string | undefined;\n endDate: string | undefined;\n period: string | undefined;\n comments: string | undefined;\n allowPopulate: boolean;\n}\n\nexport class WeeklyPlanConflictModel implements IWeeklyPlanConflictModel {\n id!: number;\n playingFieldName!: string | undefined;\n eventTypeEnum!: number;\n eventID!: number;\n eventName!: string | undefined;\n eventWeekday!: string | undefined;\n eventStartTime!: string | undefined;\n eventEndTime!: string | undefined;\n conflictingEventTypeEnum!: number;\n conflictingEventID!: number;\n conflictingEventName!: string | undefined;\n conflictingEventTypeName!: string | undefined;\n conflictingEventStart!: string | undefined;\n conflictingEventEnd!: string | undefined;\n conflictingEventStartTime!: string | undefined;\n conflictingEventEndTime!: string | undefined;\n\n constructor(data?: IWeeklyPlanConflictModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.playingFieldName = _data[\"playingFieldName\"];\n this.eventTypeEnum = _data[\"eventTypeEnum\"];\n this.eventID = _data[\"eventID\"];\n this.eventName = _data[\"eventName\"];\n this.eventWeekday = _data[\"eventWeekday\"];\n this.eventStartTime = _data[\"eventStartTime\"];\n this.eventEndTime = _data[\"eventEndTime\"];\n this.conflictingEventTypeEnum = _data[\"conflictingEventTypeEnum\"];\n this.conflictingEventID = _data[\"conflictingEventID\"];\n this.conflictingEventName = _data[\"conflictingEventName\"];\n this.conflictingEventTypeName = _data[\"conflictingEventTypeName\"];\n this.conflictingEventStart = _data[\"conflictingEventStart\"];\n this.conflictingEventEnd = _data[\"conflictingEventEnd\"];\n this.conflictingEventStartTime = _data[\"conflictingEventStartTime\"];\n this.conflictingEventEndTime = _data[\"conflictingEventEndTime\"];\n }\n }\n\n static fromJS(data: any): WeeklyPlanConflictModel {\n data = typeof data === 'object' ? data : {};\n let result = new WeeklyPlanConflictModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"playingFieldName\"] = this.playingFieldName;\n data[\"eventTypeEnum\"] = this.eventTypeEnum;\n data[\"eventID\"] = this.eventID;\n data[\"eventName\"] = this.eventName;\n data[\"eventWeekday\"] = this.eventWeekday;\n data[\"eventStartTime\"] = this.eventStartTime;\n data[\"eventEndTime\"] = this.eventEndTime;\n data[\"conflictingEventTypeEnum\"] = this.conflictingEventTypeEnum;\n data[\"conflictingEventID\"] = this.conflictingEventID;\n data[\"conflictingEventName\"] = this.conflictingEventName;\n data[\"conflictingEventTypeName\"] = this.conflictingEventTypeName;\n data[\"conflictingEventStart\"] = this.conflictingEventStart;\n data[\"conflictingEventEnd\"] = this.conflictingEventEnd;\n data[\"conflictingEventStartTime\"] = this.conflictingEventStartTime;\n data[\"conflictingEventEndTime\"] = this.conflictingEventEndTime;\n return data;\n }\n}\n\nexport interface IWeeklyPlanConflictModel {\n id: number;\n playingFieldName: string | undefined;\n eventTypeEnum: number;\n eventID: number;\n eventName: string | undefined;\n eventWeekday: string | undefined;\n eventStartTime: string | undefined;\n eventEndTime: string | undefined;\n conflictingEventTypeEnum: number;\n conflictingEventID: number;\n conflictingEventName: string | undefined;\n conflictingEventTypeName: string | undefined;\n conflictingEventStart: string | undefined;\n conflictingEventEnd: string | undefined;\n conflictingEventStartTime: string | undefined;\n conflictingEventEndTime: string | undefined;\n}\n\nexport class WeeklyPlanTenantSessionModel implements IWeeklyPlanTenantSessionModel {\n id!: number;\n playingFieldID!: number;\n tenantID!: number;\n weekdayEnum!: number;\n startTime!: string | undefined;\n endTime!: string | undefined;\n\n constructor(data?: IWeeklyPlanTenantSessionModel) {\n if (data) {\n for (var property in data) {\n if (data.hasOwnProperty(property))\n (this)[property] = (data)[property];\n }\n }\n }\n\n init(_data?: any) {\n if (_data) {\n this.id = _data[\"id\"];\n this.playingFieldID = _data[\"playingFieldID\"];\n this.tenantID = _data[\"tenantID\"];\n this.weekdayEnum = _data[\"weekdayEnum\"];\n this.startTime = _data[\"startTime\"];\n this.endTime = _data[\"endTime\"];\n }\n }\n\n static fromJS(data: any): WeeklyPlanTenantSessionModel {\n data = typeof data === 'object' ? data : {};\n let result = new WeeklyPlanTenantSessionModel();\n result.init(data);\n return result;\n }\n\n toJSON(data?: any) {\n data = typeof data === 'object' ? data : {};\n data[\"id\"] = this.id;\n data[\"playingFieldID\"] = this.playingFieldID;\n data[\"tenantID\"] = this.tenantID;\n data[\"weekdayEnum\"] = this.weekdayEnum;\n data[\"startTime\"] = this.startTime;\n data[\"endTime\"] = this.endTime;\n return data;\n }\n}\n\nexport interface IWeeklyPlanTenantSessionModel {\n id: number;\n playingFieldID: number;\n tenantID: number;\n weekdayEnum: number;\n startTime: string | undefined;\n endTime: string | undefined;\n}\n\nexport interface FileResponse {\n data: Blob;\n status: number;\n fileName?: string;\n headers?: { [name: string]: any };\n}\n\nexport class ApiException extends Error {\n message: string;\n status: number;\n response: string;\n headers: { [key: string]: any; };\n result: any;\n\n constructor(message: string, status: number, response: string, headers: { [key: string]: any; }, result: any) {\n super();\n\n this.message = message;\n this.status = status;\n this.response = response;\n this.headers = headers;\n this.result = result;\n }\n\n protected isApiException = true;\n\n static isApiException(obj: any): obj is ApiException {\n return obj.isApiException === true;\n }\n}\n\nfunction throwException(message: string, status: number, response: string, headers: { [key: string]: any; }, result?: any): any {\n if (result !== null && result !== undefined)\n throw result;\n else\n throw new ApiException(message, status, response, headers, null);\n}\n\nfunction isAxiosError(obj: any): obj is AxiosError {\n return obj && obj.isAxiosError === true;\n}","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Toasts.vue?vue&type=style&index=0&id=8dfe4cf0&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app',[_c('v-app-bar',{attrs:{\"app\":\"\",\"color\":\"primary\",\"dark\":\"\"}},[_c('div',{staticClass:\"d-flex align-center\"},[_c('v-img',{staticClass:\"shrink mr-2\",attrs:{\"alt\":\"Vuetify Logo\",\"contain\":\"\",\"src\":require(\"./assets/csk_logo.png\"),\"transition\":\"scale-transition\",\"width\":\"60\"},on:{\"click\":function($event){return _vm.logoClicked()}}}),_c('v-toolbar-title',{staticClass:\"title\"},[_vm._v(\"Baneplan 1.3.2\")])],1),_c('v-spacer'),_c('v-menu',{attrs:{\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nreturn [_c('v-btn',_vm._g({attrs:{\"slot\":\"activator\",\"flat\":\"\",\"color\":\"primary\"},slot:\"activator\"},on),[_c('span',[_vm._v(\"...\")])])]}}])},[_c('v-list',[_c('v-list-item',{on:{\"click\":function($event){return _vm.homeClicked()}}},[_c('v-list-item-title',[_vm._v(\"Hjem\")])],1),(_vm.$store.state.isAdmin)?_c('v-list-item',{on:{\"click\":function($event){return _vm.adminClicked()}}},[_c('v-list-item-title',[_vm._v(\"Admin\")])],1):_vm._e(),(_vm.$store.state.isAdmin)?_c('v-list-item',{on:{\"click\":function($event){return _vm.clubClicked()}}},[_c('v-list-item-title',[_vm._v(\"Klubb\")])],1):_vm._e(),(_vm.$store.state.isAdmin)?_c('v-list-item',{on:{\"click\":function($event){return _vm.fieldPlanningClicked()}}},[_c('v-list-item-title',[_vm._v(\"Baneplanlegging\")])],1):_vm._e(),(_vm.$store.state.currentUserIsLoggedOn)?_c('v-list-item',{on:{\"click\":function($event){return _vm.userProfileClicked()}}},[_c('v-list-item-title',[_vm._v(\"Brukerprofil\")])],1):_vm._e(),_c('v-list-item',{on:{\"click\":function($event){return _vm.aboutClicked()}}},[_c('v-list-item-title',[_vm._v(\"Om Baneplan.no\")])],1),(_vm.$store.state.currentUserIsLoggedOn)?_c('v-list-item',{on:{\"click\":function($event){return _vm.logOutClicked()}}},[_c('v-list-item-title',[_vm._v(\"Logg ut\")])],1):_vm._e(),(!_vm.$store.state.currentUserIsLoggedOn)?_c('v-list-item',{on:{\"click\":function($event){return _vm.logInClicked()}}},[_c('v-list-item-title',[_vm._v(\"Logg inn\")])],1):_vm._e(),_c('v-divider'),_c('v-list-item',[(_vm.$store.state.currentUserIsLoggedOn)?_c('label',{staticClass:\"mr-5\"},[_vm._v(\"Bruker: \"+_vm._s(_vm.$store.state.userName)+\" / \"+_vm._s(_vm.$store.state.clubName)+\" \")]):_vm._e(),(!_vm.$store.state.currentUserIsLoggedOn)?_c('label',{staticClass:\"mr-5\"},[_vm._v(\"Bruker: Gjest\")]):_vm._e()])],1)],1)],1),_c('v-content',[_c('router-view')],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const weeklyPlanStore = {\n state: { \n selectedPlayingFieldId: null,\n selectedPeriodId: null\n },\n getters: { },\n mutations: { },\n actions: { },\n modules: { }\n}\n","import { UserRoleEnumModel } from '@/api.client';\nimport Vue from 'vue'\nimport Vuex from 'vuex'\nimport { weeklyPlanStore } from './weeklyPlan';\nimport ToastModel from '@/components/Toaster/ToastModel';\n\nVue.use(Vuex)\n\n\nexport default new Vuex.Store({\n state: {\n Id: 1,\n userName: ' - ',\n clubId: null,\n clubName: ' - ',\n departmentId: null,\n departmentName: ' - ',\n userRoleEnumId: UserRoleEnumModel.Applicant,\n isAdmin: false,\n isReader: false,\n isApplicant: false,\n isAuthorisedButNoRole: false,\n weeklyPlanSelectedPlayingFieldId: null,\n weeklyPlanSelectedPeriodId: null,\n toasts: [] as ToastModel[], \n currentUserIsLoggedOn: false,\n currentUserIsApproved: false,\n },\n getters: {\n \n },\n mutations: {\n ADD_TOAST(state, toast: ToastModel) { \n state.toasts = []; // Ensure that other toasts are removed\n state.toasts.push(toast);\n },\n CLEAR_TOAST(state, title) {\n const index = state.toasts.findIndex(x => x.Title == title);\n state.toasts.splice(index, 1);\n },\n UPDATE_CURRENT_USER_NAME(state, userName) {\n state.userName = userName;\n },\n UPDATE_CURRENT_CLUB_NAME(state, clubName){\n state.clubName = clubName;\n },\n UPDATE_CURRENT_DEPARTMENT_NAME(state, departmentName){\n state.departmentName = departmentName;\n },\n UPDATE_CURRENT_DEPARTMENT_ID(state, departmentId){\n state.departmentId = departmentId; \n },\n UPDATE_CURRENT_CLUB_ID(state, clubId){\n state.clubId = clubId;\n },\n UPDATE_CURRENT_USER_ROLE_ENUM_ID(state, userRoleEnumId){\n state.userRoleEnumId = userRoleEnumId;\n },\n UPDATE_SET_IS_ADMIN(state, isAdmin){ \n state.isAdmin = isAdmin;\n },\n UPDATE_SET_IS_READER(state, isReader){\n state.isReader = isReader;\n },\n UPDATE_SET_IS_APPLICANT(state, isApplicant){\n state.isApplicant = isApplicant;\n },\n UPDATE_SET_IS_AUTHORISED_BUT_NO_ROLE(state, isAuthorisedButNoRole){\n state.isAuthorisedButNoRole = isAuthorisedButNoRole;\n },\n UPDATE_WEEKLY_PLAN_SELECTED_PLAYING_FIELD_ID(state, selectedPlayingFieldId){\n state.weeklyPlanSelectedPlayingFieldId = selectedPlayingFieldId\n },\n UPDATE_WEEKLY_PLAN_SELECTED_PERIOD_ID(state, selectedPeriodId){\n state.weeklyPlanSelectedPeriodId = selectedPeriodId\n },\n UPDATE_CURRENT_USER_IS_LOGGED_ON(state, currentUserIsLoggedOn){\n state.currentUserIsLoggedOn = currentUserIsLoggedOn\n }, \n UPDATE_CURRENT_USER_IS_APPROVED(state, currentUserIsApproved){\n state.currentUserIsApproved = currentUserIsApproved\n }, \n },\n actions: {\n addToast(context: any, toast: ToastModel) {\n context.commit('ADD_TOAST', toast);\n }, \n clearToast(context: any, title: any) {\n context.commit('CLEAR_TOAST', title);\n },\n setCurrentUser(context: any, userName: string){\n context.commit('UPDATE_CURRENT_USER_NAME', userName);\n },\n setCurrentClubName(context: any, clubName: string){\n context.commit('UPDATE_CURRENT_CLUB_NAME', clubName);\n },\n setCurrentDepartmentName(context: any, departmentName: string){\n context.commit('UPDATE_CURRENT_DEPARTMENT_NAME', departmentName);\n },\n setCurrentDepartmentId(context: any, departmentId: number){ \n context.commit('UPDATE_CURRENT_DEPARTMENT_ID', departmentId);\n },\n setCurrentClubId(context: any, clubId: number){\n context.commit('UPDATE_CURRENT_CLUB_ID', clubId);\n },\n setCurrentUserRoleEnumId(context: any, userRoleEnumId: UserRoleEnumModel){\n context.commit('UPDATE_CURRENT_USER_ROLE_ENUM_ID', userRoleEnumId);\n context.commit('UPDATE_SET_IS_ADMIN', userRoleEnumId === UserRoleEnumModel.Admin);\n context.commit('UPDATE_SET_IS_READER', userRoleEnumId === UserRoleEnumModel.Reader);\n context.commit('UPDATE_SET_IS_APPLICANT', userRoleEnumId === UserRoleEnumModel.Applicant);\n context.commit('UPDATE_SET_IS_AUTHORISED_BUT_NO_ROLE', userRoleEnumId === UserRoleEnumModel.AuthorisedButNoRole);\n },\n setCurrentUserIsLoggedOn(context: any, isLoggedOn: boolean){\n context.commit('UPDATE_CURRENT_USER_IS_LOGGED_ON', isLoggedOn);\n },\n setCurrentUserIsApproved(context: any, isApproved: boolean){\n context.commit('UPDATE_CURRENT_USER_IS_APPROVED', isApproved);\n },\n setWeeklyPlanSelectedPlayingFieldId(context: any, selectedPlayingFieldId) { \n context.commit('UPDATE_WEEKLY_PLAN_SELECTED_PLAYING_FIELD_ID', selectedPlayingFieldId);\n },\n setWeeklyPlanSelectedPeriodId(context: any, selectedPeriodId) {\n context.commit('UPDATE_WEEKLY_PLAN_SELECTED_PERIOD_ID', selectedPeriodId);\n } \n },\n modules: {\n weeklyPlanStore\n }\n})\n","import Vue from 'vue'\nimport VueRouter from 'vue-router'\n\nVue.use(VueRouter)\n\nconst routes = [ \n {\n // Current club is the home page\n path: '/',\n name: 'Home',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/Home.vue')\n },\n {\n path: '/admin',\n name: 'Admin',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/Admin.vue')\n },\n {\n path: '/about',\n name: 'About',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/About.vue') \n },\n {\n // path: '/club/:clubId',\n path: '/club',\n name: 'Club',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/Club.vue') \n },\n {\n path: '/UserDetails/:id',\n name: 'UserDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/UserDetails.vue') \n },\n {\n path: '/ClubDetails/:id',\n name: 'ClubDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/ClubDetails.vue') \n },\n {\n path: '/DepartmentDetails/:id', \n name: 'DepartmentDetails', \n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/DepartmentDetails.vue'),\n },\n {\n path: '/TeamDetails/:id',\n name: 'TeamDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TeamDetails.vue'),\n },\n {\n path: '/RegionDetails/:id',\n name: 'RegionDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/RegionDetails.vue')\n },\n {\n path: '/TrainingFacilityDetails/:id',\n name: 'TrainingFacilityDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TrainingFacilityDetails.vue')\n },\n {\n path: '/SeasonDetails/:id',\n name: 'SeasonDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/SeasonDetails.vue')\n },\n {\n path: '/PlayingFieldDetails/:id',\n name: 'PlayingFieldDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/PlayingFieldDetails.vue')\n }, \n {\n path: '/PlanTemplateDetails/:id',\n name: 'PlanTemplateDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/PlanTemplateDetails.vue')\n },\n {\n path: '/trainingFacilities',\n name: 'TrainingFacilities',\n props: true,\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TrainingFacilities.vue') \n }, \n {\n path: '/FieldPlanning',\n name: 'FieldPlanning',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/FieldPlanning.vue') \n },\n {\n path: '/PlanTemplateTeamSessionDetails/:id',\n name: 'PlanTemplateTeamSessionDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/PlanTemplateTeamSessionDetails.vue') \n },\n {\n path: '/TeamYearClassDetails/:id',\n name: 'TeamYearClassDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TeamYearClassDetails.vue') \n },\n {\n path:'/WeeklyPlanDetails/:id',\n name: 'WeeklyPlanDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/WeeklyPlanDetails.vue')\n },\n {\n path:'/WeeklyPlanTeamSessionDetails/:id',\n name: 'WeeklyPlanTeamSessionDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/WeeklyPlanTeamSessionDetails.vue')\n },\n {\n path: '/TournamentMatchDetails/:id',\n name: 'TournamentMatchDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TournamentMatchDetails.vue')\n },\n {\n path: '/TournamentTeamDetails/:id',\n name: 'TournamentTeamDetails',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TournamentTeamDetails.vue')\n },\n {\n path: '/UserProfile',\n name: 'UserProfile',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/UserProfile.vue')\n },\n {\n path: '/teamActivities/:weeklyPlanId',\n name: 'TeamActivities',\n // route level code-splitting\n // this generates a separate chunk (about.[hash].js) for this route\n // which is lazy-loaded when the route is visited.\n component: () => import(/* webpackChunkName: \"about\" */ '../views/TeamActivities.vue')\n } \n]\n\nconst router = new VueRouter({\n routes\n})\n\nexport default router\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport { UserClient, UserRoleEnumModel } from './api.client';\nimport store from './store'\nimport router from './router'\n\nexport default Vue.extend({\n name: 'App',\n \n mounted: () => {\n const userClient: UserClient = new UserClient();\n userClient.getCurrentUser().then(response => { \n store.dispatch(\"setCurrentUser\", response.userName);\n store.dispatch(\"setCurrentClubName\", response.clubName);\n store.dispatch(\"setCurrentDepartmentName\", response.departmentName);\n store.dispatch(\"setCurrentClubId\", response.clubID);\n store.dispatch(\"setCurrentDepartmentId\", response.departmentID);\n store.dispatch(\"setCurrentUserRoleEnumId\", response.userRoleEnumID);\n store.dispatch(\"setCurrentUserIsLoggedOn\", response.isLoggedOn);\n store.dispatch(\"setCurrentUserIsApproved\", response.isApproved);\n\n if(response.isLoggedOn && !response.isApproved){\n // Redirect to user profile spa page\n router.push('/userProfile');\n return;\n }\n }); \n },\n\n data: () => ({\n }),\n \n methods: {\n logoClicked() {\n // Go home \n this.$router.push('/');\n },\n homeClicked() {\n this.$router.push('/');\n },\n adminClicked() {\n this.$router.push('/admin');\n },\n clubClicked() {\n this.$router.push('/club');\n },\n fieldPlanningClicked() {\n this.$router.push('/fieldPlanning');\n },\n aboutClicked() {\n this.$router.push('/about');\n },\n userProfileClicked() { \n this.$router.push('/userProfile');\n },\n logOutClicked() {\n window.location.href = '/MicrosoftIdentity/Account/SignOut';\n },\n logInClicked() {\n window.location.href = '/MicrosoftIdentity/Account/SignIn'; \n } \n }\n \n});\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=68b54832&\"\nimport script from \"./App.vue?vue&type=script&lang=ts&\"\nexport * from \"./App.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VApp } from 'vuetify/lib/components/VApp';\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VContent } from 'vuetify/lib/components/VContent';\nimport { VDivider } from 'vuetify/lib/components/VDivider';\nimport { VImg } from 'vuetify/lib/components/VImg';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VListItemTitle } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\nimport { VToolbarTitle } from 'vuetify/lib/components/VToolbar';\ninstallComponents(component, {VApp,VAppBar,VBtn,VContent,VDivider,VImg,VList,VListItem,VListItemTitle,VMenu,VSpacer,VToolbarTitle})\n","import Vue from 'vue';\nimport Vuetify from 'vuetify/lib';\n\nVue.use(Vuetify);\n\nexport default new Vuetify({\n});\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"main\"},[_c('div',{staticClass:\"bar\",class:_vm.type}),_c('div',{staticClass:\"buffer\"}),_c('div',{staticClass:\"content\"},[_c('h3',{staticStyle:{\"font-weight\":\"bold\"}},[_vm._v(_vm._s(_vm.title))]),_c('p',[_vm._v(_vm._s(_vm.message))])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport { Component, Prop, Watch } from 'vue-property-decorator';\n@Component({ })\nexport default class Toast extends Vue {\n \n @Prop() toast: any;\n @Watch('toast', {immediate: true})\n toastChanged(newValue: any, oldValue: any) { \n this.title = newValue.Title;\n this.message = newValue.Message;\n this.type = newValue.Type; \n }\n\n public title: any = \"\";\n public message: any = \"\";\n public type: any = \"\";\n\n // When created, wait for 5 secs and dismiss the toasts\n created() {\n setTimeout(() => {\n this.dismissToast();\n }, 5000);\n }\n\n dismissToast() {\n this.$store.dispatch('clearToast', this.toast.Title);\n }\n\n}\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Toast.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Toast.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Toast.vue?vue&type=template&id=41370794&scoped=true&\"\nimport script from \"./Toast.vue?vue&type=script&lang=ts&\"\nexport * from \"./Toast.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Toast.vue?vue&type=style&index=0&id=41370794&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"41370794\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.toasts.length)?_c('div',{staticClass:\"toasts-wrapper\"},_vm._l((_vm.toasts),function(toast,index){return _c('Toast',{key:index,attrs:{\"toast\":toast}})}),1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\nimport Vue from 'vue';\nimport { Component } from 'vue-property-decorator';\nimport Toast from './Toast.vue';\nimport ToastModel from './ToastModel';\n@Component( { name: 'Toasts', components: { Toast }} )\nexport default class Toasts extends Vue {\n\n get toasts(): ToastModel[] {\n return this.$store.state.toasts; \n }\n}\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Toasts.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Toasts.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Toasts.vue?vue&type=template&id=8dfe4cf0&scoped=true&\"\nimport script from \"./Toasts.vue?vue&type=script&lang=ts&\"\nexport * from \"./Toasts.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Toasts.vue?vue&type=style&index=0&id=8dfe4cf0&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8dfe4cf0\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport App from './App.vue'\nimport router from './router'\nimport store from './store'\nimport Vuetify from 'vuetify';\nimport vuetify from './plugins/vuetify';\nimport Toast from './components/Toaster/Toast.vue';\nimport Toasts from './components/Toaster/Toasts.vue';\n\nVue.config.productionTip = false\n\nVue.use(Vuetify);\n\nVue.component('Toast', Toast);\nVue.component('Toasts', Toasts);\n\nnew Vue({\n router,\n store,\n vuetify,\n render: h => h(App)\n}).$mount('#app')\n\n\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Toast.vue?vue&type=style&index=0&id=41370794&scoped=true&lang=css&\""],"sourceRoot":""}