@dmdata/telegram-json-types 1.0.9-jschema.2 → 1.1.2

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 (52) hide show
  1. package/README.md +13 -4
  2. package/dist/build.js +9 -4
  3. package/dist/config.d.ts +2 -1
  4. package/dist/config.js +3 -2
  5. package/dist/jschema/earthquake-counts_1.0.0.json +1 -1
  6. package/dist/jschema/earthquake-explanation_1.0.0.json +1 -1
  7. package/dist/jschema/earthquake-hypocenter-update_1.0.0.json +1 -1
  8. package/dist/jschema/earthquake-information_1.0.0.json +1 -1
  9. package/dist/jschema/earthquake-information_1.1.0.json +1 -1
  10. package/dist/jschema/earthquake-nankai_1.0.0.json +1 -1
  11. package/dist/jschema/eew-information_1.0.0.json +1 -1
  12. package/dist/jschema/tsunami-information_1.0.0.json +1 -1
  13. package/dist/jschema/volcano-information_1.0.0.json +1 -1
  14. package/dist/jschema/weather-early_1.0.0.json +1 -0
  15. package/dist/jschema/weather-impact-society_1.0.0.json +1 -0
  16. package/dist/jschema/weather-information_1.0.0.json +1 -0
  17. package/dist/jschema/weather-landslide_1.0.0.json +1 -0
  18. package/dist/jschema/weather-river-flood_1.0.0.json +1 -0
  19. package/dist/jschema/weather-tornado_1.0.0.json +1 -0
  20. package/dist/jschema/weather-typhoon_1.0.0.json +1 -1
  21. package/dist/jschema/weather-warning_1.0.0.json +1 -0
  22. package/jest.config.ts +202 -0
  23. package/package.json +16 -4
  24. package/test/sample-schema-check.test.ts +54 -0
  25. package/tsconfig.json +28 -20
  26. package/types/component/code-name.ts +4 -0
  27. package/types/index.d.ts +37 -1
  28. package/types/schema/earthquake-counts/1.0.0.d.ts +69 -69
  29. package/types/schema/earthquake-explanation/1.0.0.d.ts +57 -57
  30. package/types/schema/earthquake-hypocenter-update/1.0.0.d.ts +53 -53
  31. package/types/schema/earthquake-information/1.0.0.d.ts +16 -22
  32. package/types/schema/earthquake-information/1.1.0.d.ts +18 -24
  33. package/types/schema/earthquake-nankai/1.0.0.d.ts +86 -87
  34. package/types/schema/earthquake-nankai/index.d.ts +1 -1
  35. package/types/schema/eew-information/1.0.0.d.ts +23 -29
  36. package/types/schema/tsunami-information/1.0.0.d.ts +76 -57
  37. package/types/schema/volcano-information/1.0.0.d.ts +450 -449
  38. package/types/schema/weather-early/1.0.0.d.ts +135 -0
  39. package/types/schema/weather-early/index.d.ts +7 -0
  40. package/types/schema/weather-impact-society/1.0.0.d.ts +140 -0
  41. package/types/schema/weather-impact-society/index.d.ts +7 -0
  42. package/types/schema/weather-information/1.0.0.d.ts +30 -0
  43. package/types/schema/weather-information/index.d.ts +7 -0
  44. package/types/schema/weather-landslide/1.0.0.d.ts +51 -0
  45. package/types/schema/weather-landslide/index.d.ts +7 -0
  46. package/types/schema/weather-river-flood/1.0.0.d.ts +188 -0
  47. package/types/schema/weather-river-flood/index.d.ts +7 -0
  48. package/types/schema/weather-tornado/1.0.0.d.ts +51 -0
  49. package/types/schema/weather-tornado/index.d.ts +7 -0
  50. package/types/schema/weather-typhoon/1.0.0.d.ts +24 -13
  51. package/types/schema/weather-warning/1.0.0.d.ts +212 -0
  52. package/types/schema/weather-warning/index.d.ts +7 -0
@@ -1,6 +1,7 @@
1
- import { Earthquake } from '../../component/earthquake';
2
- import { TelegramJSONMain } from '../../main';
3
- import { UnitValueNotNull } from '../../component/unit-value';
1
+ import { TelegramJSONMain } from '@t/main';
2
+ import { CodeName } from '@t/component/code-name';
3
+ import { Earthquake } from '@t/component/earthquake';
4
+ import { UnitValueNotNull } from '@t/component/unit-value';
4
5
 
5
6
  export namespace EarthquakeInformation {
6
7
  export interface Schema {
@@ -12,33 +13,26 @@ export namespace EarthquakeInformation {
12
13
  export type LpgmIntensityClass = '0' | '1' | '2' | '3' | '4';
13
14
  export type LpgmCategory = '1' | '2' | '3' | '4';
14
15
 
15
- export type IntensityMaxInt = {
16
- name: string;
17
- code: string;
16
+ export interface IntensityMaxInt extends CodeName {
18
17
  maxInt: IntensityClass;
19
- };
20
- export type IntensityMaxIntOnRevise = {
21
- name: string;
22
- code: string;
18
+ }
19
+
20
+ export interface IntensityMaxIntOnRevise extends CodeName {
23
21
  maxInt?: IntensityClass;
24
22
  revise?: '上方修正' | '追加';
25
23
  }
26
24
 
27
- export type IntensityCity = {
28
- name: string;
29
- code: string;
25
+ export interface IntensityCity extends CodeName {
30
26
  maxInt?: IntensityClass;
31
27
  revise?: '上方修正' | '追加';
32
28
  condition?: '震度5弱以上未入電';
33
- };
29
+ }
34
30
 
35
- export type IntensityStation = {
36
- name: string;
37
- code: string;
31
+ export interface IntensityStation extends CodeName {
38
32
  int: IntensityClass | '!5-';
39
33
  revise?: '上方修正' | '追加';
40
34
  condition?: '震度5弱以上未入電';
41
- };
35
+ }
42
36
 
43
37
  export type IntensityLpgmMaxInt = IntensityMaxIntOnRevise & {
44
38
  maxLpgmInt: LpgmIntensityClass;
@@ -67,28 +61,28 @@ export namespace EarthquakeInformation {
67
61
  };
68
62
 
69
63
 
70
- export type IntensityVXSE51 = {
64
+ export interface IntensityVXSE51 {
71
65
  maxInt: IntensityClass;
72
66
  prefectures: IntensityMaxInt[];
73
67
  regions: IntensityMaxInt[];
74
- };
68
+ }
75
69
 
76
- export type IntensityVXSE53 = {
70
+ export interface IntensityVXSE53 {
77
71
  maxInt: IntensityClass;
78
72
  prefectures: IntensityMaxIntOnRevise[];
79
73
  regions: IntensityMaxIntOnRevise[];
80
74
  cities: IntensityCity[];
81
75
  stations: IntensityStation[];
82
- };
76
+ }
83
77
 
84
- export type IntensityVXSE62 = {
78
+ export interface IntensityVXSE62 {
85
79
  maxInt: IntensityClass;
86
80
  maxLpgmInt: LpgmIntensityClass;
87
81
  lpgmCategory: LpgmCategory;
88
82
  prefectures: IntensityLpgmMaxInt[];
89
83
  regions: IntensityLpgmMaxInt[];
90
84
  stations: IntensityLpgmStation[];
91
- };
85
+ }
92
86
 
93
87
 
94
88
  export interface PublicBodyVXSE51 {
@@ -1,87 +1,86 @@
1
- import { TelegramJSONMain } from '@/types/main';
2
-
3
- export namespace EarthquakeNankai {
4
- export interface Schema {
5
- type: 'earthquake-nankai';
6
- version: '1.0.0';
7
- }
8
-
9
- export interface EarthquakeInfoKind {
10
- code: string;
11
- name: string;
12
- }
13
-
14
- export interface EarthquakeInfo {
15
- kind?: EarthquakeInfoKind;
16
- text: string;
17
- appendix?: string;
18
- }
19
-
20
-
21
- export interface PublicBody {
22
- earthquakeInfo?: EarthquakeInfo;
23
- nextAdvisory?: string;
24
- text?: string;
25
- }
26
-
27
- export interface CancelBody {
28
- text: string;
29
- }
30
-
31
- export interface PublicVYSE50 extends TelegramJSONMain {
32
- _schema: Schema;
33
- type: '南海トラフ地震臨時情報';
34
- title: string;
35
- infoType: '発表' | '訂正';
36
- targetDateTimeDubious: never;
37
- targetDuration: never;
38
- validDateTime: never;
39
- eventId: string;
40
- serialNo: null;
41
- infoKind: '南海トラフ地震に関連する情報';
42
- body: PublicBody;
43
- }
44
-
45
- export interface PublicVYSE51 extends TelegramJSONMain {
46
- _schema: Schema;
47
- type: '南海トラフ地震関連解説情報';
48
- title: string;
49
- infoType: '発表' | '訂正';
50
- targetDateTimeDubious: never;
51
- targetDuration: never;
52
- validDateTime: never;
53
- eventId: string;
54
- serialNo: string;
55
- infoKind: '南海トラフ地震に関連する情報';
56
- body: PublicBody;
57
- }
58
-
59
- export interface PublicVYSE52 extends TelegramJSONMain {
60
- _schema: Schema;
61
- type: '南海トラフ地震関連解説情報';
62
- title: string;
63
- infoType: '発表' | '訂正';
64
- targetDateTimeDubious: never;
65
- targetDuration: never;
66
- validDateTime: never;
67
- eventId: string;
68
- serialNo: null;
69
- infoKind: '南海トラフ地震に関連する情報';
70
- body: PublicBody;
71
- }
72
-
73
- export interface Cancel extends TelegramJSONMain {
74
- _schema: Schema;
75
- type: '南海トラフ地震臨時情報' | '南海トラフ地震関連解説情報';
76
- title: string;
77
- infoType: '取消';
78
- targetDateTimeDubious: never;
79
- targetDuration: never;
80
- validDateTime: never;
81
- eventId: string;
82
- infoKind: '南海トラフ地震に関連する情報';
83
- body: CancelBody;
84
- }
85
-
86
- export type Main = PublicVYSE50 | PublicVYSE51 | PublicVYSE52 | Cancel;
87
- }
1
+ import { TelegramJSONMain } from '@t/main';
2
+ import { CodeName } from '@t/component/code-name';
3
+
4
+ export namespace EarthquakeNankai {
5
+ export interface Schema {
6
+ type: 'earthquake-nankai';
7
+ version: '1.0.0';
8
+ }
9
+
10
+ export interface EarthquakeInfoKind extends CodeName{
11
+ }
12
+
13
+ export interface EarthquakeInfo {
14
+ kind?: EarthquakeInfoKind;
15
+ text: string;
16
+ appendix?: string;
17
+ }
18
+
19
+
20
+ export interface PublicBody {
21
+ earthquakeInfo?: EarthquakeInfo;
22
+ nextAdvisory?: string;
23
+ text?: string;
24
+ }
25
+
26
+ export interface CancelBody {
27
+ text: string;
28
+ }
29
+
30
+ export interface PublicVYSE50 extends TelegramJSONMain {
31
+ _schema: Schema;
32
+ type: '南海トラフ地震臨時情報';
33
+ title: string;
34
+ infoType: '発表' | '訂正';
35
+ targetDateTimeDubious: never;
36
+ targetDuration: never;
37
+ validDateTime: never;
38
+ eventId: string;
39
+ serialNo: null;
40
+ infoKind: '南海トラフ地震に関連する情報';
41
+ body: PublicBody;
42
+ }
43
+
44
+ export interface PublicVYSE51 extends TelegramJSONMain {
45
+ _schema: Schema;
46
+ type: '南海トラフ地震関連解説情報';
47
+ title: string;
48
+ infoType: '発表' | '訂正';
49
+ targetDateTimeDubious: never;
50
+ targetDuration: never;
51
+ validDateTime: never;
52
+ eventId: string;
53
+ serialNo: string;
54
+ infoKind: '南海トラフ地震に関連する情報';
55
+ body: PublicBody;
56
+ }
57
+
58
+ export interface PublicVYSE52 extends TelegramJSONMain {
59
+ _schema: Schema;
60
+ type: '南海トラフ地震関連解説情報';
61
+ title: string;
62
+ infoType: '発表' | '訂正';
63
+ targetDateTimeDubious: never;
64
+ targetDuration: never;
65
+ validDateTime: never;
66
+ eventId: string;
67
+ serialNo: null;
68
+ infoKind: '南海トラフ地震に関連する情報';
69
+ body: PublicBody;
70
+ }
71
+
72
+ export interface Cancel extends TelegramJSONMain {
73
+ _schema: Schema;
74
+ type: '南海トラフ地震臨時情報' | '南海トラフ地震関連解説情報';
75
+ title: string;
76
+ infoType: '取消';
77
+ targetDateTimeDubious: never;
78
+ targetDuration: never;
79
+ validDateTime: never;
80
+ eventId: string;
81
+ infoKind: '南海トラフ地震に関連する情報';
82
+ body: CancelBody;
83
+ }
84
+
85
+ export type Main = PublicVYSE50 | PublicVYSE51 | PublicVYSE52 | Cancel;
86
+ }
@@ -1,4 +1,4 @@
1
- import { EarthquakeExplanation as v1_0_0 } from './1.0.0';
1
+ import { EarthquakeNankai as v1_0_0 } from './1.0.0';
2
2
 
3
3
 
4
4
  export {
@@ -1,6 +1,7 @@
1
- import { TelegramJSONMain } from '@/types/main';
2
- import { Coordinate } from '@/types/component/coordinate';
3
- import { UnitValueNotNull } from '@/types/component/unit-value';
1
+ import { TelegramJSONMain } from '@t/main';
2
+ import { CodeName } from '@t/component/code-name';
3
+ import { Coordinate } from '@t/component/coordinate';
4
+ import { UnitValueNotNull } from '@t/component/unit-value';
4
5
 
5
6
 
6
7
  export namespace EewInformation {
@@ -12,24 +13,18 @@ export namespace EewInformation {
12
13
  export type IntensityClass = '0' | '1' | '2' | '3' | '4' | '5-' | '5+' | '6-' | '6+' | '7';
13
14
  export type LpgmIntensityClass = '0' | '1' | '2' | '3' | '4';
14
15
 
15
- export interface WarningAreaKind {
16
- code: string;
17
- name: string;
18
- lastKind: {
19
- code: string;
20
- name: string;
21
- };
16
+ export interface WarningAreaKindLastKind extends CodeName {
17
+ }
18
+
19
+ export interface WarningAreaKind extends CodeName {
20
+ lastKind: WarningAreaKindLastKind;
22
21
  }
23
22
 
24
- export interface WarningArea {
25
- code: string;
26
- name: string;
23
+ export interface WarningArea extends CodeName {
27
24
  kind: WarningAreaKind;
28
25
  }
29
26
 
30
- export interface EarthquakeHypocenterReduce {
31
- code: string;
32
- name: string;
27
+ export interface EarthquakeHypocenterReduce extends CodeName {
33
28
  }
34
29
 
35
30
  export interface EarthquakeHypocenterAccuracy {
@@ -42,9 +37,7 @@ export namespace EewInformation {
42
37
  numberOfMagnitudeCalculation: '0' | '1' | '2' | '3' | '4' | '5';
43
38
  }
44
39
 
45
- export interface EarthquakeHypocenter {
46
- code: string;
47
- name: string;
40
+ export interface EarthquakeHypocenter extends CodeName {
48
41
  coordinate: Coordinate<'日本測地系'>;
49
42
  depth: UnitValueNotNull<'深さ', 'km'>;
50
43
  reduce: EarthquakeHypocenterReduce;
@@ -83,12 +76,13 @@ export namespace EewInformation {
83
76
  maxIntChangeReason: '0' | '1' | '2' | '3' | '4' | '9';
84
77
  }
85
78
 
86
- export interface IntensityRegion {
87
- code: string;
88
- name: string;
79
+ export interface IntensityRegionKind extends CodeName {
80
+ }
81
+
82
+ export interface IntensityRegion extends CodeName {
89
83
  forecastMaxInt: IntensityForecastMaxInt;
90
84
  forecastLpgmMaxInt?: IntensityForecastLpgmMaxInt;
91
- kind: WarningAreaKind;
85
+ kind: IntensityRegionKind;
92
86
  }
93
87
 
94
88
 
@@ -119,7 +113,7 @@ export namespace EewInformation {
119
113
  comments: Comment;
120
114
  }
121
115
 
122
- export interface PublicTesting {
116
+ export interface PublicTestingBody {
123
117
  isLastInfo: false;
124
118
  text: string;
125
119
  }
@@ -145,8 +139,8 @@ export namespace EewInformation {
145
139
 
146
140
  export interface PublicTesting extends TelegramJSONMain {
147
141
  _schema: Schema;
148
- type: '緊急地震速報テスト';
149
- title: '緊急地震速報テスト';
142
+ type: '緊急地震速報配信テスト';
143
+ title: '緊急地震速報配信テスト';
150
144
  infoType: '発表' | '訂正';
151
145
  targetDateTimeDubious: never;
152
146
  targetDuration: never;
@@ -154,13 +148,13 @@ export namespace EewInformation {
154
148
  eventId: string;
155
149
  serialNo: string;
156
150
  infoKind: '緊急地震速報';
157
- body: PublicTesting;
151
+ body: PublicTestingBody;
158
152
  }
159
153
 
160
154
  export interface Cancel extends TelegramJSONMain {
161
155
  _schema: Schema;
162
- type: '緊急地震速報(予報)' | '緊急地震速報(地震動予報)' | '緊急地震速報(警報)' | '緊急地震速報テスト';
163
- title: '緊急地震速報(予報)' | '緊急地震速報(地震動予報)' | '緊急地震速報(警報)' | '緊急地震速報テスト';
156
+ type: '緊急地震速報(予報)' | '緊急地震速報(地震動予報)' | '緊急地震速報(警報)' | '緊急地震速報配信テスト';
157
+ title: '緊急地震速報(予報)' | '緊急地震速報(地震動予報)' | '緊急地震速報(警報)' | '緊急地震速報配信テスト';
164
158
  infoType: '取消';
165
159
  targetDateTimeDubious: never;
166
160
  targetDuration: never;
@@ -1,5 +1,6 @@
1
- import { TelegramJSONMain } from '@/types/main';
2
- import { Earthquake } from '@/types/component/earthquake';
1
+ import { TelegramJSONMain } from '@t/main';
2
+ import { CodeName } from '@t/component/code-name';
3
+ import { Earthquake } from '@t/component/earthquake';
3
4
 
4
5
 
5
6
  export namespace TsunamiInformation {
@@ -8,28 +9,36 @@ export namespace TsunamiInformation {
8
9
  version: '1.0.0';
9
10
  }
10
11
 
11
- export interface TsunamiForecastKind {
12
- code: string;
13
- name: string;
14
- lastKind: {
15
- code: string;
16
- name: string;
17
- };
12
+ export interface TsunamiForecastKindLastKind extends CodeName {
18
13
  }
19
14
 
20
- export interface TsunamiForecastFirstHeight {
21
- arrivalTime?: string;
22
- condition?: '津波到達中と推測' | '第1波の到達を確認' | 'ただちに津波来襲と予測';
23
- revise?: '追加' | '更新';
15
+ export interface TsunamiForecastKind extends CodeName {
16
+ lastKind: TsunamiForecastKindLastKind;
24
17
  }
25
18
 
26
- export interface TsunamiForecastMaxHeightValue {
19
+ export type TsunamiForecastFirstHeight = ({
20
+ arrivalTime: string;
21
+ condition?: 'ただちに津波来襲と予測';
22
+ } | {
23
+ arrivalTime: never;
24
+ condition: '津波到達中と推測' | '第1波の到達を確認';
25
+ }) &
26
+ {
27
+ revise?: '追加' | '更新';
28
+ };
29
+
30
+ export type TsunamiForecastMaxHeightValue = {
27
31
  type: '津波の高さ';
28
32
  unit: 'm';
29
- value: string | null;
33
+ } & ({
34
+ value: string;
30
35
  over?: true;
36
+ condition: never;
37
+ } | {
38
+ value: null;
39
+ over: never;
31
40
  condition?: '巨大' | '高い';
32
- }
41
+ });
33
42
 
34
43
  export interface TsunamiForecastMaxHeight {
35
44
  height: TsunamiForecastMaxHeightValue;
@@ -37,19 +46,15 @@ export namespace TsunamiInformation {
37
46
  revise?: '追加' | '更新';
38
47
  }
39
48
 
40
- export interface TsunamiForecastStation {
41
- code: string;
42
- name: string;
49
+ export interface TsunamiForecastStation extends CodeName {
43
50
  highTideDateTime: string;
44
51
  firstHeight: TsunamiForecastFirstHeight;
45
52
  }
46
53
 
47
- export interface TsunamiForecast {
48
- code: string;
49
- name: string;
54
+ export interface TsunamiForecast extends CodeName {
50
55
  kind: TsunamiForecastKind;
51
- firstHeight: TsunamiForecastFirstHeight;
52
- maxHeight: TsunamiForecastMaxHeight;
56
+ firstHeight?: TsunamiForecastFirstHeight;
57
+ maxHeight?: TsunamiForecastMaxHeight;
53
58
  stations?: TsunamiForecastStation[] | never;
54
59
  }
55
60
 
@@ -61,31 +66,45 @@ export namespace TsunamiInformation {
61
66
  stations?: TsunamiForecastStation[];
62
67
  }
63
68
 
64
- export interface TsunamiObservationStationFirstHeight {
69
+ export type TsunamiObservationStationFirstHeight = ({
65
70
  arrivalTime: string;
66
- initial?: '押し' | '引き';
67
- condition?: '第1波識別不能';
71
+ initial: '押し' | '引き';
72
+ condition: never;
73
+ } | {
74
+ arrivalTime: never;
75
+ initial: never;
76
+ condition: '第1波識別不能';
77
+ }) & {
68
78
  revise?: '追加' | '更新';
69
- }
79
+ };
70
80
 
71
81
  export interface TsunamiObservationStationMaxHeightValue {
72
82
  type: 'これまでの最大波の高さ';
73
83
  unit: 'm';
74
- value: string | null;
84
+ value: string;
75
85
  over?: true;
76
86
  condition?: '上昇中';
77
87
  }
78
88
 
79
- export interface TsunamiObservationStationMaxHeight {
80
- dateTime?: string;
81
- height?: TsunamiObservationStationMaxHeightValue;
82
- condition?: '微弱' | '観測中' | '重要';
83
- revise?: '追加' | '更新';
84
- }
85
-
86
- export interface TsunamiObservationStation {
87
- code: string;
88
- name: string;
89
+ export type TsunamiObservationStationMaxHeight =
90
+ ({
91
+ dateTime: string;
92
+ height: TsunamiObservationStationMaxHeightValue;
93
+ condition?: '重要';
94
+ } | {
95
+ dateTime: string;
96
+ height: never;
97
+ condition: '微弱';
98
+ } | {
99
+ dateTime: never;
100
+ height: never;
101
+ condition: '観測中';
102
+ }) &
103
+ {
104
+ revise?: '追加' | '更新';
105
+ }
106
+
107
+ export interface TsunamiObservationStation extends CodeName {
89
108
  sensor?: string;
90
109
  firstHeight: TsunamiObservationStationFirstHeight;
91
110
  maxHeight: TsunamiObservationStationMaxHeight;
@@ -113,23 +132,23 @@ export namespace TsunamiInformation {
113
132
  revise?: '追加' | '更新';
114
133
  }
115
134
 
116
- export interface TsunamiEstimationMaxHeightValue {
117
- type: '津波の高さ';
118
- unit: 'm';
119
- value: string | null;
120
- over?: true;
121
- }
122
-
123
- export interface TsunamiEstimationMaxHeight {
124
- dateTime?: string;
125
- height?: TsunamiEstimationMaxHeightValue;
126
- condition?: '微弱' | '観測中' | '重要';
127
- revise?: '追加' | '更新';
128
- }
135
+ export type TsunamiEstimationMaxHeightValue = TsunamiForecastMaxHeightValue;
136
+
137
+ export type TsunamiEstimationMaxHeight =
138
+ ({
139
+ dateTime: string;
140
+ height: TsunamiEstimationMaxHeightValue;
141
+ condition?: '重要';
142
+ } | {
143
+ dateTime: never;
144
+ height: never;
145
+ condition: '推定中';
146
+ }) &
147
+ {
148
+ revise?: '追加' | '更新';
149
+ };
129
150
 
130
- export interface TsunamiEstimation {
131
- code: string;
132
- name: string;
151
+ export interface TsunamiEstimation extends CodeName {
133
152
  firstHeight: TsunamiEstimationFirstHeight;
134
153
  maxHeight: TsunamiEstimationMaxHeight;
135
154
  }
@@ -140,7 +159,7 @@ export namespace TsunamiInformation {
140
159
 
141
160
  export interface PublicBodyVTSE51Tsunami {
142
161
  forecasts: TsunamiForecastVXSE51[];
143
- observations: TsunamiObservationVXSE51[];
162
+ observations?: TsunamiObservationVXSE51[];
144
163
  }
145
164
 
146
165
  export interface PublicBodyVTSE52Tsunami {
@@ -228,7 +247,7 @@ export namespace TsunamiInformation {
228
247
 
229
248
 
230
249
  export interface Cancel extends TelegramJSONMain {
231
- type: '大津波警報・津波警報・津波予報a' | '津波情報a' | '各地の満潮時刻・津波到達予想時刻に関する情報' | '津波観測に関する情報';
250
+ type: '津波警報・注意報・予報a' | '津波情報a' | '各地の満潮時刻・津波到達予想時刻に関する情報' | '津波観測に関する情報';
232
251
  infoType: '取消';
233
252
  targetDateTimeDubious: never;
234
253
  targetDuration: never;