@mtnmanager/sdk 1.8.2 → 1.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/README.md +6 -2
  2. package/dist/apis/MtnManagerApi.d.ts +28 -28
  3. package/dist/esm/apis/MtnManagerApi.d.ts +28 -28
  4. package/dist/esm/models/Amenity.d.ts +8 -0
  5. package/dist/esm/models/Amenity.js +5 -0
  6. package/dist/esm/models/AmenityStatus.d.ts +27 -0
  7. package/dist/esm/models/{SummerTrailType.js → AmenityStatus.js} +14 -13
  8. package/dist/esm/models/CurrentWeather.d.ts +1 -1
  9. package/dist/esm/models/DailyForecast.d.ts +1 -1
  10. package/dist/esm/models/HourlyForecast.d.ts +1 -1
  11. package/dist/esm/models/Lift.d.ts +1 -0
  12. package/dist/esm/models/Overview.d.ts +24 -0
  13. package/dist/esm/models/Overview.js +10 -0
  14. package/dist/esm/models/OverviewRuns.d.ts +1 -1
  15. package/dist/esm/models/OverviewTerrainParks.d.ts +2 -1
  16. package/dist/esm/models/PowderAlerts.d.ts +40 -0
  17. package/dist/esm/models/PowderAlerts.js +47 -0
  18. package/dist/esm/models/Run.d.ts +19 -2
  19. package/dist/esm/models/Run.js +4 -0
  20. package/dist/esm/models/SeasonPeriod.d.ts +45 -0
  21. package/dist/esm/models/SeasonPeriod.js +52 -0
  22. package/dist/esm/models/SummerTrail.d.ts +14 -5
  23. package/dist/esm/models/SummerTrail.js +7 -4
  24. package/dist/esm/models/SummerTrailActivity.d.ts +32 -0
  25. package/dist/esm/models/SummerTrailActivity.js +50 -0
  26. package/dist/esm/models/SummerTrailDifficultyType.d.ts +27 -0
  27. package/dist/esm/models/SummerTrailDifficultyType.js +45 -0
  28. package/dist/esm/models/TerrainPark.d.ts +19 -2
  29. package/dist/esm/models/TerrainPark.js +4 -0
  30. package/dist/esm/models/TerrainParkFeature.d.ts +2 -1
  31. package/dist/esm/models/index.d.ts +5 -1
  32. package/dist/esm/models/index.js +5 -1
  33. package/dist/models/Amenity.d.ts +8 -0
  34. package/dist/models/Amenity.js +5 -0
  35. package/dist/models/AmenityStatus.d.ts +27 -0
  36. package/dist/models/AmenityStatus.js +53 -0
  37. package/dist/models/CurrentWeather.d.ts +1 -1
  38. package/dist/models/DailyForecast.d.ts +1 -1
  39. package/dist/models/HourlyForecast.d.ts +1 -1
  40. package/dist/models/Lift.d.ts +1 -0
  41. package/dist/models/Overview.d.ts +24 -0
  42. package/dist/models/Overview.js +10 -0
  43. package/dist/models/OverviewRuns.d.ts +1 -1
  44. package/dist/models/OverviewTerrainParks.d.ts +2 -1
  45. package/dist/models/PowderAlerts.d.ts +40 -0
  46. package/dist/models/PowderAlerts.js +54 -0
  47. package/dist/models/Run.d.ts +19 -2
  48. package/dist/models/Run.js +4 -0
  49. package/dist/models/SeasonPeriod.d.ts +45 -0
  50. package/dist/models/SeasonPeriod.js +59 -0
  51. package/dist/models/SummerTrail.d.ts +14 -5
  52. package/dist/models/SummerTrail.js +7 -4
  53. package/dist/models/SummerTrailActivity.d.ts +32 -0
  54. package/dist/models/SummerTrailActivity.js +58 -0
  55. package/dist/models/SummerTrailDifficultyType.d.ts +27 -0
  56. package/dist/models/SummerTrailDifficultyType.js +53 -0
  57. package/dist/models/TerrainPark.d.ts +19 -2
  58. package/dist/models/TerrainPark.js +4 -0
  59. package/dist/models/TerrainParkFeature.d.ts +2 -1
  60. package/dist/models/index.d.ts +5 -1
  61. package/dist/models/index.js +5 -1
  62. package/package.json +1 -1
  63. package/dist/esm/models/SummerTrailType.d.ts +0 -26
  64. package/dist/models/SummerTrailType.d.ts +0 -26
  65. package/dist/models/SummerTrailType.js +0 -52
@@ -12,6 +12,7 @@
12
12
  * Do not edit the class manually.
13
13
  */
14
14
  import { AmenityCategoryFromJSON, AmenityCategoryToJSON, } from './AmenityCategory';
15
+ import { AmenityStatusFromJSON, AmenityStatusToJSON, } from './AmenityStatus';
15
16
  import { ScheduleFromJSON, ScheduleToJSON, } from './Schedule';
16
17
  import { EntityImageFromJSON, EntityImageToJSON, } from './EntityImage';
17
18
  /**
@@ -30,6 +31,8 @@ export function instanceOfAmenity(value) {
30
31
  return false;
31
32
  if (!('website' in value) || value['website'] === undefined)
32
33
  return false;
34
+ if (!('status' in value) || value['status'] === undefined)
35
+ return false;
33
36
  if ((!('hasOperatingHours' in value) && !('has_operating_hours' in value)) || (value['hasOperatingHours'] === undefined && value['has_operating_hours'] === undefined))
34
37
  return false;
35
38
  if (!('schedules' in value) || value['schedules'] === undefined)
@@ -50,6 +53,7 @@ export function AmenityFromJSONTyped(json, ignoreDiscriminator) {
50
53
  'slug': json['slug'],
51
54
  'category': AmenityCategoryFromJSON(json['category']),
52
55
  'website': json['website'],
56
+ 'status': AmenityStatusFromJSON(json['status']),
53
57
  'hasOperatingHours': json['has_operating_hours'],
54
58
  'opensAt': json['opens_at'] === undefined ? undefined : json['opens_at'] === null ? null : json['opens_at'],
55
59
  'closesAt': json['closes_at'] === undefined ? undefined : json['closes_at'] === null ? null : json['closes_at'],
@@ -71,6 +75,7 @@ export function AmenityToJSONTyped(value, ignoreDiscriminator = false) {
71
75
  'slug': value['slug'],
72
76
  'category': AmenityCategoryToJSON(value['category']),
73
77
  'website': value['website'],
78
+ 'status': AmenityStatusToJSON(value['status']),
74
79
  'has_operating_hours': value['hasOperatingHours'],
75
80
  'opens_at': value['opensAt'],
76
81
  'closes_at': value['closesAt'],
@@ -0,0 +1,27 @@
1
+ /**
2
+ * MtnManager API
3
+ * The MtnManager API provides real-time access to your ski resort’s public operational data. Use it to display current conditions on your website, mobile app, or digital signage.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: support@mtnmanager.com
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Operational status of an amenity.
14
+ * @export
15
+ */
16
+ export declare const AmenityStatus: {
17
+ readonly Open: "open";
18
+ readonly Closed: "closed";
19
+ readonly Unknown: "unknown";
20
+ readonly UnknownDefaultOpenApi: "11184809";
21
+ };
22
+ export type AmenityStatus = typeof AmenityStatus[keyof typeof AmenityStatus];
23
+ export declare function instanceOfAmenityStatus(value: any): boolean;
24
+ export declare function AmenityStatusFromJSON(json: any): AmenityStatus;
25
+ export declare function AmenityStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): AmenityStatus;
26
+ export declare function AmenityStatusToJSON(value?: AmenityStatus | null): any;
27
+ export declare function AmenityStatusToJSONTyped(value: any, ignoreDiscriminator: boolean): AmenityStatus;
@@ -12,33 +12,34 @@
12
12
  * Do not edit the class manually.
13
13
  */
14
14
  /**
15
- *
15
+ * Operational status of an amenity.
16
16
  * @export
17
17
  */
18
- export const SummerTrailType = {
19
- Hiking: 'hiking',
20
- MountainBiking: 'mountain_biking',
18
+ export const AmenityStatus = {
19
+ Open: 'open',
20
+ Closed: 'closed',
21
+ Unknown: 'unknown',
21
22
  UnknownDefaultOpenApi: '11184809'
22
23
  };
23
- export function instanceOfSummerTrailType(value) {
24
- for (const key in SummerTrailType) {
25
- if (Object.prototype.hasOwnProperty.call(SummerTrailType, key)) {
26
- if (SummerTrailType[key] === value) {
24
+ export function instanceOfAmenityStatus(value) {
25
+ for (const key in AmenityStatus) {
26
+ if (Object.prototype.hasOwnProperty.call(AmenityStatus, key)) {
27
+ if (AmenityStatus[key] === value) {
27
28
  return true;
28
29
  }
29
30
  }
30
31
  }
31
32
  return false;
32
33
  }
33
- export function SummerTrailTypeFromJSON(json) {
34
- return SummerTrailTypeFromJSONTyped(json, false);
34
+ export function AmenityStatusFromJSON(json) {
35
+ return AmenityStatusFromJSONTyped(json, false);
35
36
  }
36
- export function SummerTrailTypeFromJSONTyped(json, ignoreDiscriminator) {
37
+ export function AmenityStatusFromJSONTyped(json, ignoreDiscriminator) {
37
38
  return json;
38
39
  }
39
- export function SummerTrailTypeToJSON(value) {
40
+ export function AmenityStatusToJSON(value) {
40
41
  return value;
41
42
  }
42
- export function SummerTrailTypeToJSONTyped(value, ignoreDiscriminator) {
43
+ export function AmenityStatusToJSONTyped(value, ignoreDiscriminator) {
43
44
  return value;
44
45
  }
@@ -31,7 +31,7 @@ export interface CurrentWeather {
31
31
  */
32
32
  metric: CurrentWeatherMetric;
33
33
  /**
34
- * Human-readable weather condition
34
+ * Human-readable weather condition, in the `Accept-Language` language
35
35
  * @type {string}
36
36
  * @memberof CurrentWeather
37
37
  */
@@ -37,7 +37,7 @@ export interface DailyForecast {
37
37
  */
38
38
  metric: DailyForecastMetric;
39
39
  /**
40
- * Human-readable condition
40
+ * Human-readable condition, in the `Accept-Language` language
41
41
  * @type {string}
42
42
  * @memberof DailyForecast
43
43
  */
@@ -37,7 +37,7 @@ export interface HourlyForecast {
37
37
  */
38
38
  metric: HourlyForecastMetric;
39
39
  /**
40
- * Human-readable condition
40
+ * Human-readable condition, in the `Accept-Language` language
41
41
  * @type {string}
42
42
  * @memberof HourlyForecast
43
43
  */
@@ -111,6 +111,7 @@ export interface Lift {
111
111
  status: LiftStatus;
112
112
  /**
113
113
  * Current estimated wait time in minutes, if available.
114
+ * Always `null` when the lift is closed.
114
115
  * @type {number}
115
116
  * @memberof Lift
116
117
  */
@@ -14,6 +14,8 @@ import type { OverviewLifts } from './OverviewLifts';
14
14
  import type { SeasonType } from './SeasonType';
15
15
  import type { OverviewRuns } from './OverviewRuns';
16
16
  import type { ResortStatus } from './ResortStatus';
17
+ import type { PowderAlerts } from './PowderAlerts';
18
+ import type { SeasonPeriod } from './SeasonPeriod';
17
19
  import type { OverviewSummerTrails } from './OverviewSummerTrails';
18
20
  import type { OverviewNews } from './OverviewNews';
19
21
  /**
@@ -51,6 +53,22 @@ export interface Overview {
51
53
  * @memberof Overview
52
54
  */
53
55
  season: SeasonType;
56
+ /**
57
+ * The last season to end before today, from the resort's operating
58
+ * hours of the past year. `null` if there was none. While `season` is
59
+ * `closed`, this and `next_season` tell an off-season that just ended a
60
+ * winter from one leading up to a summer.
61
+ * @type {SeasonPeriod}
62
+ * @memberof Overview
63
+ */
64
+ previousSeason?: SeasonPeriod | null;
65
+ /**
66
+ * The next season to start after today, from the resort's scheduled
67
+ * operating hours. `null` if none is scheduled yet.
68
+ * @type {SeasonPeriod}
69
+ * @memberof Overview
70
+ */
71
+ nextSeason?: SeasonPeriod | null;
54
72
  /**
55
73
  * Written news — daily update, announcements, etc. The resort's primary
56
74
  * news comes first, followed by any others it publishes, in the order they
@@ -84,6 +102,12 @@ export interface Overview {
84
102
  * @memberof Overview
85
103
  */
86
104
  terrainParks: OverviewTerrainParks;
105
+ /**
106
+ * Guest powder alerts the resort offers, by channel.
107
+ * @type {PowderAlerts}
108
+ * @memberof Overview
109
+ */
110
+ powderAlerts: PowderAlerts;
87
111
  }
88
112
  /**
89
113
  * Check if a given object implements the Overview interface.
@@ -16,6 +16,8 @@ import { OverviewLiftsFromJSON, OverviewLiftsToJSON, } from './OverviewLifts';
16
16
  import { SeasonTypeFromJSON, SeasonTypeToJSON, } from './SeasonType';
17
17
  import { OverviewRunsFromJSON, OverviewRunsToJSON, } from './OverviewRuns';
18
18
  import { ResortStatusFromJSON, ResortStatusToJSON, } from './ResortStatus';
19
+ import { PowderAlertsFromJSON, PowderAlertsToJSON, } from './PowderAlerts';
20
+ import { SeasonPeriodFromJSON, SeasonPeriodToJSON, } from './SeasonPeriod';
19
21
  import { OverviewSummerTrailsFromJSON, OverviewSummerTrailsToJSON, } from './OverviewSummerTrails';
20
22
  import { OverviewNewsFromJSON, OverviewNewsToJSON, } from './OverviewNews';
21
23
  /**
@@ -36,6 +38,8 @@ export function instanceOfOverview(value) {
36
38
  return false;
37
39
  if ((!('terrainParks' in value) && !('terrain_parks' in value)) || (value['terrainParks'] === undefined && value['terrain_parks'] === undefined))
38
40
  return false;
41
+ if ((!('powderAlerts' in value) && !('powder_alerts' in value)) || (value['powderAlerts'] === undefined && value['powder_alerts'] === undefined))
42
+ return false;
39
43
  return true;
40
44
  }
41
45
  export function OverviewFromJSON(json) {
@@ -50,11 +54,14 @@ export function OverviewFromJSONTyped(json, ignoreDiscriminator) {
50
54
  'opensAt': json['opens_at'] === undefined ? undefined : json['opens_at'] === null ? null : json['opens_at'],
51
55
  'closesAt': json['closes_at'] === undefined ? undefined : json['closes_at'] === null ? null : json['closes_at'],
52
56
  'season': SeasonTypeFromJSON(json['season']),
57
+ 'previousSeason': json['previous_season'] === undefined ? undefined : json['previous_season'] === null ? null : SeasonPeriodFromJSON(json['previous_season']),
58
+ 'nextSeason': json['next_season'] === undefined ? undefined : json['next_season'] === null ? null : SeasonPeriodFromJSON(json['next_season']),
53
59
  'news': (json['news'].map(OverviewNewsFromJSON)),
54
60
  'runs': OverviewRunsFromJSON(json['runs']),
55
61
  'lifts': OverviewLiftsFromJSON(json['lifts']),
56
62
  'summerTrails': OverviewSummerTrailsFromJSON(json['summer_trails']),
57
63
  'terrainParks': OverviewTerrainParksFromJSON(json['terrain_parks']),
64
+ 'powderAlerts': PowderAlertsFromJSON(json['powder_alerts']),
58
65
  };
59
66
  }
60
67
  export function OverviewToJSON(json) {
@@ -69,10 +76,13 @@ export function OverviewToJSONTyped(value, ignoreDiscriminator = false) {
69
76
  'opens_at': value['opensAt'],
70
77
  'closes_at': value['closesAt'],
71
78
  'season': SeasonTypeToJSON(value['season']),
79
+ 'previous_season': SeasonPeriodToJSON(value['previousSeason']),
80
+ 'next_season': SeasonPeriodToJSON(value['nextSeason']),
72
81
  'news': (value['news'].map(OverviewNewsToJSON)),
73
82
  'runs': OverviewRunsToJSON(value['runs']),
74
83
  'lifts': OverviewLiftsToJSON(value['lifts']),
75
84
  'summer_trails': OverviewSummerTrailsToJSON(value['summerTrails']),
76
85
  'terrain_parks': OverviewTerrainParksToJSON(value['terrainParks']),
86
+ 'powder_alerts': PowderAlertsToJSON(value['powderAlerts']),
77
87
  };
78
88
  }
@@ -23,7 +23,7 @@ export interface OverviewRuns {
23
23
  */
24
24
  open?: number | null;
25
25
  /**
26
- * Number of runs groomed within the last 24 hours.
26
+ * Number of runs groomed since the resort last closed (see `groomed_today`).
27
27
  * Not included if the runs grooming feature is disabled.
28
28
  * @type {number}
29
29
  * @memberof OverviewRuns
@@ -23,7 +23,8 @@ export interface OverviewTerrainParks {
23
23
  */
24
24
  open?: number | null;
25
25
  /**
26
- * Number of terrain parks groomed within the last 24 hours.
26
+ * Number of terrain parks groomed since the resort last closed (see
27
+ * `groomed_today`).
27
28
  * Not included if the terrain park grooming feature is disabled.
28
29
  * @type {number}
29
30
  * @memberof OverviewTerrainParks
@@ -0,0 +1,40 @@
1
+ /**
2
+ * MtnManager API
3
+ * The MtnManager API provides real-time access to your ski resort’s public operational data. Use it to display current conditions on your website, mobile app, or digital signage.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: support@mtnmanager.com
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * Guest powder alerts the resort offers. Both are `false` when the resort
14
+ * doesn't offer powder alerts.
15
+ * @export
16
+ * @interface PowderAlerts
17
+ */
18
+ export interface PowderAlerts {
19
+ /**
20
+ * Guests can sign up for text alerts via
21
+ * `POST /api/notifications/v1/text/powder/signup` on the resort's host.
22
+ * @type {boolean}
23
+ * @memberof PowderAlerts
24
+ */
25
+ text: boolean;
26
+ /**
27
+ * Guests can subscribe to push alerts in the resort's mobile app.
28
+ * @type {boolean}
29
+ * @memberof PowderAlerts
30
+ */
31
+ push: boolean;
32
+ }
33
+ /**
34
+ * Check if a given object implements the PowderAlerts interface.
35
+ */
36
+ export declare function instanceOfPowderAlerts(value: object): value is PowderAlerts;
37
+ export declare function PowderAlertsFromJSON(json: any): PowderAlerts;
38
+ export declare function PowderAlertsFromJSONTyped(json: any, ignoreDiscriminator: boolean): PowderAlerts;
39
+ export declare function PowderAlertsToJSON(json: any): PowderAlerts;
40
+ export declare function PowderAlertsToJSONTyped(value?: PowderAlerts | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,47 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * MtnManager API
5
+ * The MtnManager API provides real-time access to your ski resort’s public operational data. Use it to display current conditions on your website, mobile app, or digital signage.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@mtnmanager.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ /**
15
+ * Check if a given object implements the PowderAlerts interface.
16
+ */
17
+ export function instanceOfPowderAlerts(value) {
18
+ if (!('text' in value) || value['text'] === undefined)
19
+ return false;
20
+ if (!('push' in value) || value['push'] === undefined)
21
+ return false;
22
+ return true;
23
+ }
24
+ export function PowderAlertsFromJSON(json) {
25
+ return PowderAlertsFromJSONTyped(json, false);
26
+ }
27
+ export function PowderAlertsFromJSONTyped(json, ignoreDiscriminator) {
28
+ if (json == null) {
29
+ return json;
30
+ }
31
+ return {
32
+ 'text': json['text'],
33
+ 'push': json['push'],
34
+ };
35
+ }
36
+ export function PowderAlertsToJSON(json) {
37
+ return PowderAlertsToJSONTyped(json, false);
38
+ }
39
+ export function PowderAlertsToJSONTyped(value, ignoreDiscriminator = false) {
40
+ if (value == null) {
41
+ return value;
42
+ }
43
+ return {
44
+ 'text': value['text'],
45
+ 'push': value['push'],
46
+ };
47
+ }
@@ -57,17 +57,34 @@ export interface Run {
57
57
  status: RunStatus;
58
58
  /**
59
59
  * When the run was last groomed.
60
- * `null` if never groomed, or if the runs grooming feature is disabled.
60
+ * `null` if not groomed this season (since the snow year began: Aug 1, or
61
+ * Jan 1 in the southern hemisphere), or if the runs grooming feature is disabled.
61
62
  * @type {Date}
62
63
  * @memberof Run
63
64
  */
64
65
  lastGroomed?: Date | null;
65
66
  /**
66
- * Whether the run was groomed within the last 24 hours.
67
+ * Whether the run has been groomed since the resort last closed (or,
68
+ * for a resort with no operating hours set, within the last 24 hours).
67
69
  * @type {boolean}
68
70
  * @memberof Run
69
71
  */
70
72
  groomedToday: boolean;
73
+ /**
74
+ * New snow (cm) reported since `last_groomed` ("groomed with fresh").
75
+ * Absent unless the run was groomed within the last 24 hours and the
76
+ * resort keeps a snow report.
77
+ * @type {number}
78
+ * @memberof Run
79
+ */
80
+ snowSinceGroomedCm?: number | null;
81
+ /**
82
+ * New snow (inches) reported since `last_groomed`; see
83
+ * `snow_since_groomed_cm`.
84
+ * @type {number}
85
+ * @memberof Run
86
+ */
87
+ snowSinceGroomedIn?: number | null;
71
88
  /**
72
89
  * Whether the run has snowmaking capabilities.
73
90
  * @type {boolean}
@@ -56,6 +56,8 @@ export function RunFromJSONTyped(json, ignoreDiscriminator) {
56
56
  'status': RunStatusFromJSON(json['status']),
57
57
  'lastGroomed': json['last_groomed'] === undefined ? undefined : json['last_groomed'] === null ? null : (new Date(json['last_groomed'])),
58
58
  'groomedToday': json['groomed_today'],
59
+ 'snowSinceGroomedCm': json['snow_since_groomed_cm'] === undefined ? undefined : json['snow_since_groomed_cm'] === null ? null : json['snow_since_groomed_cm'],
60
+ 'snowSinceGroomedIn': json['snow_since_groomed_in'] === undefined ? undefined : json['snow_since_groomed_in'] === null ? null : json['snow_since_groomed_in'],
59
61
  'snowmaking': json['snowmaking'],
60
62
  'nightSkiing': json['night_skiing'],
61
63
  'conditionNotes': json['condition_notes'],
@@ -82,6 +84,8 @@ export function RunToJSONTyped(value, ignoreDiscriminator = false) {
82
84
  'status': RunStatusToJSON(value['status']),
83
85
  'last_groomed': value['lastGroomed'] == null ? value['lastGroomed'] : value['lastGroomed'].toISOString(),
84
86
  'groomed_today': value['groomedToday'],
87
+ 'snow_since_groomed_cm': value['snowSinceGroomedCm'],
88
+ 'snow_since_groomed_in': value['snowSinceGroomedIn'],
85
89
  'snowmaking': value['snowmaking'],
86
90
  'night_skiing': value['nightSkiing'],
87
91
  'condition_notes': value['conditionNotes'],
@@ -0,0 +1,45 @@
1
+ /**
2
+ * MtnManager API
3
+ * The MtnManager API provides real-time access to your ski resort’s public operational data. Use it to display current conditions on your website, mobile app, or digital signage.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: support@mtnmanager.com
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { SeasonType } from './SeasonType';
13
+ /**
14
+ * A season the resort's operating hours define: its type and its days.
15
+ * @export
16
+ * @interface SeasonPeriod
17
+ */
18
+ export interface SeasonPeriod {
19
+ /**
20
+ * The season's type (`winter` or `summer`; never `closed`).
21
+ * @type {SeasonType}
22
+ * @memberof SeasonPeriod
23
+ */
24
+ seasonType: SeasonType;
25
+ /**
26
+ * The season's first day (YYYY-MM-DD), in the resort's local timezone.
27
+ * @type {Date}
28
+ * @memberof SeasonPeriod
29
+ */
30
+ startsOn: Date;
31
+ /**
32
+ * The season's last day (YYYY-MM-DD), in the resort's local timezone.
33
+ * @type {Date}
34
+ * @memberof SeasonPeriod
35
+ */
36
+ endsOn: Date;
37
+ }
38
+ /**
39
+ * Check if a given object implements the SeasonPeriod interface.
40
+ */
41
+ export declare function instanceOfSeasonPeriod(value: object): value is SeasonPeriod;
42
+ export declare function SeasonPeriodFromJSON(json: any): SeasonPeriod;
43
+ export declare function SeasonPeriodFromJSONTyped(json: any, ignoreDiscriminator: boolean): SeasonPeriod;
44
+ export declare function SeasonPeriodToJSON(json: any): SeasonPeriod;
45
+ export declare function SeasonPeriodToJSONTyped(value?: SeasonPeriod | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,52 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * MtnManager API
5
+ * The MtnManager API provides real-time access to your ski resort’s public operational data. Use it to display current conditions on your website, mobile app, or digital signage.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@mtnmanager.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ import { SeasonTypeFromJSON, SeasonTypeToJSON, } from './SeasonType';
15
+ /**
16
+ * Check if a given object implements the SeasonPeriod interface.
17
+ */
18
+ export function instanceOfSeasonPeriod(value) {
19
+ if ((!('seasonType' in value) && !('season_type' in value)) || (value['seasonType'] === undefined && value['season_type'] === undefined))
20
+ return false;
21
+ if ((!('startsOn' in value) && !('starts_on' in value)) || (value['startsOn'] === undefined && value['starts_on'] === undefined))
22
+ return false;
23
+ if ((!('endsOn' in value) && !('ends_on' in value)) || (value['endsOn'] === undefined && value['ends_on'] === undefined))
24
+ return false;
25
+ return true;
26
+ }
27
+ export function SeasonPeriodFromJSON(json) {
28
+ return SeasonPeriodFromJSONTyped(json, false);
29
+ }
30
+ export function SeasonPeriodFromJSONTyped(json, ignoreDiscriminator) {
31
+ if (json == null) {
32
+ return json;
33
+ }
34
+ return {
35
+ 'seasonType': SeasonTypeFromJSON(json['season_type']),
36
+ 'startsOn': (new Date(json['starts_on'])),
37
+ 'endsOn': (new Date(json['ends_on'])),
38
+ };
39
+ }
40
+ export function SeasonPeriodToJSON(json) {
41
+ return SeasonPeriodToJSONTyped(json, false);
42
+ }
43
+ export function SeasonPeriodToJSONTyped(value, ignoreDiscriminator = false) {
44
+ if (value == null) {
45
+ return value;
46
+ }
47
+ return {
48
+ 'season_type': SeasonTypeToJSON(value['seasonType']),
49
+ 'starts_on': value['startsOn'].toISOString().substring(0, 10),
50
+ 'ends_on': value['endsOn'].toISOString().substring(0, 10),
51
+ };
52
+ }
@@ -9,13 +9,14 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { SummerTrailActivity } from './SummerTrailActivity';
13
+ import type { SummerTrailDifficultyType } from './SummerTrailDifficultyType';
12
14
  import type { SummerTrailStatus } from './SummerTrailStatus';
13
- import type { SummerTrailType } from './SummerTrailType';
14
15
  import type { EntityImage } from './EntityImage';
15
16
  import type { SummerTrailDifficulty } from './SummerTrailDifficulty';
16
17
  /**
17
18
  * Represents a single summer trail at the resort with its current status,
18
- * type (e.g. hiking, mountain biking), and optional difficulty rating.
19
+ * activities (e.g. hiking, mountain biking, dogs), and optional difficulty rating.
19
20
  * @export
20
21
  * @interface SummerTrail
21
22
  */
@@ -45,17 +46,25 @@ export interface SummerTrail {
45
46
  */
46
47
  number?: number | null;
47
48
  /**
48
- * Type of trail activity (e.g. hiking, mountain_biking). Can have multiple.
49
- * @type {Array<SummerTrailType>}
49
+ * Activities the trail is open to (e.g. hiking, mountain_biking,
50
+ * on_leash_dogs). Can have multiple.
51
+ * @type {Array<SummerTrailActivity>}
50
52
  * @memberof SummerTrail
51
53
  */
52
- trailType: Array<SummerTrailType>;
54
+ activities: Array<SummerTrailActivity>;
53
55
  /**
54
56
  * Difficulty rating of the trail (optional for summer trails).
55
57
  * @type {SummerTrailDifficulty}
56
58
  * @memberof SummerTrail
57
59
  */
58
60
  difficulty?: SummerTrailDifficulty | null;
61
+ /**
62
+ * The rating system the difficulty is shown in, which picks its icon:
63
+ * `null` for the standard one, or a mountain-bike freeride / technical one.
64
+ * @type {SummerTrailDifficultyType}
65
+ * @memberof SummerTrail
66
+ */
67
+ difficultyType?: SummerTrailDifficultyType | null;
59
68
  /**
60
69
  * Current operational status (open, closed, or unknown).
61
70
  * @type {SummerTrailStatus}
@@ -11,8 +11,9 @@
11
11
  * https://openapi-generator.tech
12
12
  * Do not edit the class manually.
13
13
  */
14
+ import { SummerTrailActivityFromJSON, SummerTrailActivityToJSON, } from './SummerTrailActivity';
15
+ import { SummerTrailDifficultyTypeFromJSON, SummerTrailDifficultyTypeToJSON, } from './SummerTrailDifficultyType';
14
16
  import { SummerTrailStatusFromJSON, SummerTrailStatusToJSON, } from './SummerTrailStatus';
15
- import { SummerTrailTypeFromJSON, SummerTrailTypeToJSON, } from './SummerTrailType';
16
17
  import { EntityImageFromJSON, EntityImageToJSON, } from './EntityImage';
17
18
  import { SummerTrailDifficultyFromJSON, SummerTrailDifficultyToJSON, } from './SummerTrailDifficulty';
18
19
  /**
@@ -25,7 +26,7 @@ export function instanceOfSummerTrail(value) {
25
26
  return false;
26
27
  if (!('slug' in value) || value['slug'] === undefined)
27
28
  return false;
28
- if ((!('trailType' in value) && !('trail_type' in value)) || (value['trailType'] === undefined && value['trail_type'] === undefined))
29
+ if (!('activities' in value) || value['activities'] === undefined)
29
30
  return false;
30
31
  if (!('status' in value) || value['status'] === undefined)
31
32
  return false;
@@ -47,8 +48,9 @@ export function SummerTrailFromJSONTyped(json, ignoreDiscriminator) {
47
48
  'name': json['name'],
48
49
  'slug': json['slug'],
49
50
  'number': json['number'] === undefined ? undefined : json['number'] === null ? null : json['number'],
50
- 'trailType': (json['trail_type'].map(SummerTrailTypeFromJSON)),
51
+ 'activities': (json['activities'].map(SummerTrailActivityFromJSON)),
51
52
  'difficulty': json['difficulty'] === undefined ? undefined : json['difficulty'] === null ? null : SummerTrailDifficultyFromJSON(json['difficulty']),
53
+ 'difficultyType': json['difficulty_type'] === undefined ? undefined : json['difficulty_type'] === null ? null : SummerTrailDifficultyTypeFromJSON(json['difficulty_type']),
52
54
  'status': SummerTrailStatusFromJSON(json['status']),
53
55
  'conditionNotes': json['condition_notes'],
54
56
  'areaUuid': json['area_uuid'] === undefined ? undefined : json['area_uuid'] === null ? null : json['area_uuid'],
@@ -70,8 +72,9 @@ export function SummerTrailToJSONTyped(value, ignoreDiscriminator = false) {
70
72
  'name': value['name'],
71
73
  'slug': value['slug'],
72
74
  'number': value['number'],
73
- 'trail_type': (value['trailType'].map(SummerTrailTypeToJSON)),
75
+ 'activities': (value['activities'].map(SummerTrailActivityToJSON)),
74
76
  'difficulty': SummerTrailDifficultyToJSON(value['difficulty']),
77
+ 'difficulty_type': SummerTrailDifficultyTypeToJSON(value['difficultyType']),
75
78
  'status': SummerTrailStatusToJSON(value['status']),
76
79
  'condition_notes': value['conditionNotes'],
77
80
  'area_uuid': value['areaUuid'],
@@ -0,0 +1,32 @@
1
+ /**
2
+ * MtnManager API
3
+ * The MtnManager API provides real-time access to your ski resort’s public operational data. Use it to display current conditions on your website, mobile app, or digital signage.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: support@mtnmanager.com
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * An activity (or permission, like dogs) a summer trail is open to.
14
+ * @export
15
+ */
16
+ export declare const SummerTrailActivity: {
17
+ readonly Hiking: "hiking";
18
+ readonly MountainBiking: "mountain_biking";
19
+ readonly EBiking: "e_biking";
20
+ readonly GravelBiking: "gravel_biking";
21
+ readonly TrailRunning: "trail_running";
22
+ readonly OnLeashDogs: "on_leash_dogs";
23
+ readonly OffLeashDogs: "off_leash_dogs";
24
+ readonly HorsebackRiding: "horseback_riding";
25
+ readonly UnknownDefaultOpenApi: "11184809";
26
+ };
27
+ export type SummerTrailActivity = typeof SummerTrailActivity[keyof typeof SummerTrailActivity];
28
+ export declare function instanceOfSummerTrailActivity(value: any): boolean;
29
+ export declare function SummerTrailActivityFromJSON(json: any): SummerTrailActivity;
30
+ export declare function SummerTrailActivityFromJSONTyped(json: any, ignoreDiscriminator: boolean): SummerTrailActivity;
31
+ export declare function SummerTrailActivityToJSON(value?: SummerTrailActivity | null): any;
32
+ export declare function SummerTrailActivityToJSONTyped(value: any, ignoreDiscriminator: boolean): SummerTrailActivity;