@dmdata/telegram-json-types 1.2.0 → 1.2.3
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.
- package/.github/workflows/release.yml +33 -0
- package/LICENSE +21 -21
- package/README.md +79 -79
- package/dist/jschema/forecast-weathermap_1.0.0.json +1 -1
- package/dist/jschema/weather-warning-timeseries_1.0.0.json +1 -1
- package/dist/jschema-load.js +3 -36
- package/index.d.ts +2 -2
- package/package.json +30 -32
- package/test/sample-schema-check.test.ts +68 -68
- package/tsconfig.json +25 -25
- package/types/component/coordinate.d.ts +27 -27
- package/types/component/earthquake.d.ts +77 -77
- package/types/component/index.d.ts +17 -17
- package/types/component/unit-value.d.ts +13 -13
- package/types/component/util.d.ts +20 -20
- package/types/index.d.ts +84 -84
- package/types/schema/earthquake-counts/1.0.0.d.ts +69 -69
- package/types/schema/earthquake-explanation/1.0.0.d.ts +57 -57
- package/types/schema/earthquake-hypocenter-update/1.0.0.d.ts +53 -53
- package/types/schema/earthquake-information/1.0.0.d.ts +158 -158
- package/types/schema/earthquake-information/1.1.0.d.ts +224 -224
- package/types/schema/earthquake-information/index.d.ts +9 -9
- package/types/schema/earthquake-nankai/1.0.0.d.ts +101 -101
- package/types/schema/eew-information/1.0.0.d.ts +221 -221
- package/types/schema/eew-information/index.d.ts +7 -7
- package/types/schema/forecast-2week-temperature/1.0.0.d.ts +110 -110
- package/types/schema/forecast-prefecture/1.0.0.d.ts +537 -537
- package/types/schema/forecast-season/1.0.0.d.ts +169 -169
- package/types/schema/forecast-warning-possibility/1.0.0.d.ts +388 -388
- package/types/schema/forecast-warning-possibility/1.1.0.d.ts +129 -129
- package/types/schema/forecast-warning-possibility/index.d.ts +9 -9
- package/types/schema/forecast-weathermap/1.0.0.d.ts +206 -194
- package/types/schema/tsunami-information/1.0.0.d.ts +261 -261
- package/types/schema/tsunami-information/1.1.0.d.ts +298 -298
- package/types/schema/tsunami-information/index.d.ts +9 -9
- package/types/schema/volcano-information/1.0.0.d.ts +450 -450
- package/types/schema/weather-commentary/1.0.0.d.ts +984 -984
- package/types/schema/weather-commentary/index.d.ts +7 -7
- package/types/schema/weather-early/1.0.0.d.ts +111 -111
- package/types/schema/weather-impact-society/1.0.0.d.ts +143 -143
- package/types/schema/weather-impact-society/1.0.1.d.ts +118 -118
- package/types/schema/weather-information/1.0.0.d.ts +67 -67
- package/types/schema/weather-landslide/1.0.0.d.ts +51 -51
- package/types/schema/weather-river-flood/1.0.0.d.ts +192 -192
- package/types/schema/weather-tornado/1.0.0.d.ts +55 -55
- package/types/schema/weather-typhoon/1.0.0.d.ts +146 -146
- package/types/schema/weather-typhoon/index.d.ts +7 -7
- package/types/schema/weather-warning/1.0.0.d.ts +213 -213
- package/types/schema/weather-warning/1.1.0.d.ts +469 -469
- package/types/schema/weather-warning/index.d.ts +9 -9
- package/types/schema/weather-warning-timeseries/1.0.0.d.ts +357 -385
- package/types/schema/weather-warning-timeseries/index.d.ts +7 -7
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { WeatherCommentary as v1_0_0 } from './1.0.0';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export {
|
|
5
|
-
v1_0_0 as Latest,
|
|
6
|
-
v1_0_0
|
|
7
|
-
};
|
|
1
|
+
import { WeatherCommentary as v1_0_0 } from './1.0.0';
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
export {
|
|
5
|
+
v1_0_0 as Latest,
|
|
6
|
+
v1_0_0
|
|
7
|
+
};
|
|
@@ -1,111 +1,111 @@
|
|
|
1
|
-
import { TelegramJSONMain } from '../../main';
|
|
2
|
-
import { Components } from '../../component';
|
|
3
|
-
|
|
4
|
-
export namespace WeatherEarly {
|
|
5
|
-
export interface Schema {
|
|
6
|
-
type: 'weather-early';
|
|
7
|
-
version: '1.0.0';
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface Target extends Components.CodeName {
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export interface TargetTimeDateTime {
|
|
14
|
-
value: string;
|
|
15
|
-
validFormat: string;
|
|
16
|
-
precision: string;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
export interface TargetTime {
|
|
20
|
-
dateTime: TargetTimeDateTime;
|
|
21
|
-
duration?: string;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export interface MainTextZone extends Components.CodeName {
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export interface MainText {
|
|
28
|
-
text: string;
|
|
29
|
-
zones: MainTextZone[];
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export interface EarlyBaseZone extends Components.CodeName {
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export interface EarlyBase {
|
|
36
|
-
type: string;
|
|
37
|
-
forecasts: Object;
|
|
38
|
-
zones: EarlyBaseZone[];
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export interface EarlyHighForecastProbabilityAboveNormal {
|
|
42
|
-
unit: '%';
|
|
43
|
-
value: string;
|
|
44
|
-
bound: '以上';
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export interface EarlyHighForecastThresholdAboveNormal {
|
|
48
|
-
unit: '%' | '℃';
|
|
49
|
-
value: string;
|
|
50
|
-
bound: '以上';
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export interface EarlyLowForecastProbabilityBelowNormal {
|
|
54
|
-
unit: '%';
|
|
55
|
-
value: string;
|
|
56
|
-
bound: '以上';
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export interface EarlyLowForecastThresholdBelowNormal {
|
|
60
|
-
unit: '℃';
|
|
61
|
-
value: string;
|
|
62
|
-
bound: '以下';
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
export interface EarlyHighForecast {
|
|
66
|
-
probabilityAboveNormal: EarlyHighForecastProbabilityAboveNormal;
|
|
67
|
-
thresholdAboveNormal: EarlyHighForecastThresholdAboveNormal;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export interface EarlyLowForecast {
|
|
71
|
-
probabilityBelowNormal: EarlyLowForecastProbabilityBelowNormal;
|
|
72
|
-
thresholdBelowNormal: EarlyLowForecastThresholdBelowNormal;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
export interface EarlyHigh extends EarlyBase {
|
|
76
|
-
type: 'かなりの高温' | '大雪';
|
|
77
|
-
forecasts: EarlyHighForecast;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
export interface EarlyLow extends EarlyBase {
|
|
81
|
-
type: 'かなりの低温';
|
|
82
|
-
forecasts: EarlyLowForecast;
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
export type Early = EarlyHigh | EarlyLow;
|
|
86
|
-
|
|
87
|
-
export interface PublicBody {
|
|
88
|
-
notice?: string;
|
|
89
|
-
target: Target;
|
|
90
|
-
targetTime: TargetTime;
|
|
91
|
-
mainTexts: [MainText];
|
|
92
|
-
early: Early[];
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
export interface Public extends TelegramJSONMain {
|
|
97
|
-
_schema: Schema;
|
|
98
|
-
type: '早期天候情報';
|
|
99
|
-
title: string;
|
|
100
|
-
infoType: '発表' | '訂正';
|
|
101
|
-
targetDateTimeDubious: '頃';
|
|
102
|
-
targetDuration: string;
|
|
103
|
-
validDateTime: string;
|
|
104
|
-
eventId: null;
|
|
105
|
-
serialNo: null;
|
|
106
|
-
infoKind: '早期天候情報';
|
|
107
|
-
body: PublicBody;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
export type Main = Public;
|
|
111
|
-
}
|
|
1
|
+
import { TelegramJSONMain } from '../../main';
|
|
2
|
+
import { Components } from '../../component';
|
|
3
|
+
|
|
4
|
+
export namespace WeatherEarly {
|
|
5
|
+
export interface Schema {
|
|
6
|
+
type: 'weather-early';
|
|
7
|
+
version: '1.0.0';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface Target extends Components.CodeName {
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface TargetTimeDateTime {
|
|
14
|
+
value: string;
|
|
15
|
+
validFormat: string;
|
|
16
|
+
precision: string;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export interface TargetTime {
|
|
20
|
+
dateTime: TargetTimeDateTime;
|
|
21
|
+
duration?: string;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface MainTextZone extends Components.CodeName {
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export interface MainText {
|
|
28
|
+
text: string;
|
|
29
|
+
zones: MainTextZone[];
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface EarlyBaseZone extends Components.CodeName {
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export interface EarlyBase {
|
|
36
|
+
type: string;
|
|
37
|
+
forecasts: Object;
|
|
38
|
+
zones: EarlyBaseZone[];
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export interface EarlyHighForecastProbabilityAboveNormal {
|
|
42
|
+
unit: '%';
|
|
43
|
+
value: string;
|
|
44
|
+
bound: '以上';
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export interface EarlyHighForecastThresholdAboveNormal {
|
|
48
|
+
unit: '%' | '℃';
|
|
49
|
+
value: string;
|
|
50
|
+
bound: '以上';
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface EarlyLowForecastProbabilityBelowNormal {
|
|
54
|
+
unit: '%';
|
|
55
|
+
value: string;
|
|
56
|
+
bound: '以上';
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export interface EarlyLowForecastThresholdBelowNormal {
|
|
60
|
+
unit: '℃';
|
|
61
|
+
value: string;
|
|
62
|
+
bound: '以下';
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export interface EarlyHighForecast {
|
|
66
|
+
probabilityAboveNormal: EarlyHighForecastProbabilityAboveNormal;
|
|
67
|
+
thresholdAboveNormal: EarlyHighForecastThresholdAboveNormal;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export interface EarlyLowForecast {
|
|
71
|
+
probabilityBelowNormal: EarlyLowForecastProbabilityBelowNormal;
|
|
72
|
+
thresholdBelowNormal: EarlyLowForecastThresholdBelowNormal;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export interface EarlyHigh extends EarlyBase {
|
|
76
|
+
type: 'かなりの高温' | '大雪';
|
|
77
|
+
forecasts: EarlyHighForecast;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export interface EarlyLow extends EarlyBase {
|
|
81
|
+
type: 'かなりの低温';
|
|
82
|
+
forecasts: EarlyLowForecast;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export type Early = EarlyHigh | EarlyLow;
|
|
86
|
+
|
|
87
|
+
export interface PublicBody {
|
|
88
|
+
notice?: string;
|
|
89
|
+
target: Target;
|
|
90
|
+
targetTime: TargetTime;
|
|
91
|
+
mainTexts: [MainText];
|
|
92
|
+
early: Early[];
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
export interface Public extends TelegramJSONMain {
|
|
97
|
+
_schema: Schema;
|
|
98
|
+
type: '早期天候情報';
|
|
99
|
+
title: string;
|
|
100
|
+
infoType: '発表' | '訂正';
|
|
101
|
+
targetDateTimeDubious: '頃';
|
|
102
|
+
targetDuration: string;
|
|
103
|
+
validDateTime: string;
|
|
104
|
+
eventId: null;
|
|
105
|
+
serialNo: null;
|
|
106
|
+
infoKind: '早期天候情報';
|
|
107
|
+
body: PublicBody;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export type Main = Public;
|
|
111
|
+
}
|
|
@@ -1,143 +1,143 @@
|
|
|
1
|
-
import { TelegramJSONMain } from '../../main';
|
|
2
|
-
import { Components } from '../../component';
|
|
3
|
-
|
|
4
|
-
export namespace WeatherImpactSociety {
|
|
5
|
-
export interface Schema {
|
|
6
|
-
type: 'weather-impact-society';
|
|
7
|
-
version: '1.0.0';
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
export interface Target extends Components.CodeName {
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export interface TargetTimeDateTime {
|
|
14
|
-
value: string;
|
|
15
|
-
validFormat: string;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface TargetTime {
|
|
19
|
-
dateTime: TargetTimeDateTime;
|
|
20
|
-
duration?: string;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export interface MainTextZone extends Components.CodeName {
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export interface MainTextPrefecture extends Components.CodeName {
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export interface MainText {
|
|
30
|
-
text: string;
|
|
31
|
-
zones?: MainTextZone[];
|
|
32
|
-
prefectures?: MainTextPrefecture[];
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export interface StatisticPeriodDateTime {
|
|
36
|
-
value: string;
|
|
37
|
-
validFormat?: string;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export interface StatisticPeriod {
|
|
41
|
-
dateTime: StatisticPeriodDateTime;
|
|
42
|
-
duration: string;
|
|
43
|
-
name: string;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export interface StatisticStationObservedValue {
|
|
47
|
-
type: string;
|
|
48
|
-
unit: string;
|
|
49
|
-
value: string | null;
|
|
50
|
-
condition?: string;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
export interface StatisticStation extends Components.CodeName {
|
|
54
|
-
type: '天候の状況(速報値)';
|
|
55
|
-
remark?: string;
|
|
56
|
-
observedValues: StatisticStationObservedValue[];
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
export interface Statistic {
|
|
60
|
-
type: '気象官署及び特別地域気象観測所' | 'アメダス';
|
|
61
|
-
period: StatisticPeriod;
|
|
62
|
-
text?: string;
|
|
63
|
-
stations: StatisticStation[];
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export interface SeasonZoneEventDataDate {
|
|
67
|
-
value: string;
|
|
68
|
-
dubious: '頃';
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
export interface SeasonZoneEventData {
|
|
72
|
-
date?: SeasonZoneEventDataDate;
|
|
73
|
-
normal: SeasonZoneEventDataDate;
|
|
74
|
-
lastYear?: SeasonZoneEventDataDate;
|
|
75
|
-
remark?: string;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
export interface SeasonZone extends Components.CodeName {
|
|
79
|
-
type: '梅雨入り' | '梅雨明け';
|
|
80
|
-
eventData: SeasonZoneEventData;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
export interface Season {
|
|
84
|
-
type: '梅雨';
|
|
85
|
-
zones: SeasonZone[];
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
export interface PublicBody {
|
|
89
|
-
notice?: string;
|
|
90
|
-
target: Target;
|
|
91
|
-
targetTime: TargetTime;
|
|
92
|
-
mainTexts: MainText [];
|
|
93
|
-
statistics?: Statistic[];
|
|
94
|
-
comment?: string;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
export interface PublicBodyZone extends PublicBody {
|
|
98
|
-
mainTexts: Required<Omit<MainText, 'prefectures'>>[];
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
export interface PublicBodyPrefecture extends PublicBody {
|
|
102
|
-
mainTexts: Required<Omit<MainText, 'zones'>>[];
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
export interface PublicBodyZoneSeason extends PublicBodyZone {
|
|
106
|
-
season: Season;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
export interface Public extends TelegramJSONMain {
|
|
111
|
-
_schema: Schema;
|
|
112
|
-
type: '全般天候情報' | '地方天候情報' | '府県天候情報';
|
|
113
|
-
title: string;
|
|
114
|
-
infoType: '発表' | '訂正' | '取消';
|
|
115
|
-
targetDateTimeDubious?: never;
|
|
116
|
-
targetDuration?: never;
|
|
117
|
-
validDateTime?: string;
|
|
118
|
-
eventId: string;
|
|
119
|
-
serialNo: string;
|
|
120
|
-
infoKind: '天候情報';
|
|
121
|
-
body: PublicBody;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
export interface PublicZone extends Public {
|
|
125
|
-
type: '全般天候情報' | '地方天候情報';
|
|
126
|
-
validDateTime: string;
|
|
127
|
-
body: PublicBodyZone;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
export interface PublicPrefecture extends Public {
|
|
131
|
-
type: '府県天候情報';
|
|
132
|
-
validDateTime: string;
|
|
133
|
-
body: PublicBodyPrefecture;
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
export interface PublicZoneSeason extends Public {
|
|
137
|
-
type: '地方天候情報';
|
|
138
|
-
validDateTime?: never;
|
|
139
|
-
body: PublicBodyZoneSeason;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
export type Main = PublicZone | PublicPrefecture | PublicZoneSeason;
|
|
143
|
-
}
|
|
1
|
+
import { TelegramJSONMain } from '../../main';
|
|
2
|
+
import { Components } from '../../component';
|
|
3
|
+
|
|
4
|
+
export namespace WeatherImpactSociety {
|
|
5
|
+
export interface Schema {
|
|
6
|
+
type: 'weather-impact-society';
|
|
7
|
+
version: '1.0.0';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface Target extends Components.CodeName {
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface TargetTimeDateTime {
|
|
14
|
+
value: string;
|
|
15
|
+
validFormat: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface TargetTime {
|
|
19
|
+
dateTime: TargetTimeDateTime;
|
|
20
|
+
duration?: string;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface MainTextZone extends Components.CodeName {
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export interface MainTextPrefecture extends Components.CodeName {
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export interface MainText {
|
|
30
|
+
text: string;
|
|
31
|
+
zones?: MainTextZone[];
|
|
32
|
+
prefectures?: MainTextPrefecture[];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
export interface StatisticPeriodDateTime {
|
|
36
|
+
value: string;
|
|
37
|
+
validFormat?: string;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface StatisticPeriod {
|
|
41
|
+
dateTime: StatisticPeriodDateTime;
|
|
42
|
+
duration: string;
|
|
43
|
+
name: string;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface StatisticStationObservedValue {
|
|
47
|
+
type: string;
|
|
48
|
+
unit: string;
|
|
49
|
+
value: string | null;
|
|
50
|
+
condition?: string;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
export interface StatisticStation extends Components.CodeName {
|
|
54
|
+
type: '天候の状況(速報値)';
|
|
55
|
+
remark?: string;
|
|
56
|
+
observedValues: StatisticStationObservedValue[];
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export interface Statistic {
|
|
60
|
+
type: '気象官署及び特別地域気象観測所' | 'アメダス';
|
|
61
|
+
period: StatisticPeriod;
|
|
62
|
+
text?: string;
|
|
63
|
+
stations: StatisticStation[];
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export interface SeasonZoneEventDataDate {
|
|
67
|
+
value: string;
|
|
68
|
+
dubious: '頃';
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export interface SeasonZoneEventData {
|
|
72
|
+
date?: SeasonZoneEventDataDate;
|
|
73
|
+
normal: SeasonZoneEventDataDate;
|
|
74
|
+
lastYear?: SeasonZoneEventDataDate;
|
|
75
|
+
remark?: string;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export interface SeasonZone extends Components.CodeName {
|
|
79
|
+
type: '梅雨入り' | '梅雨明け';
|
|
80
|
+
eventData: SeasonZoneEventData;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export interface Season {
|
|
84
|
+
type: '梅雨';
|
|
85
|
+
zones: SeasonZone[];
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export interface PublicBody {
|
|
89
|
+
notice?: string;
|
|
90
|
+
target: Target;
|
|
91
|
+
targetTime: TargetTime;
|
|
92
|
+
mainTexts: MainText [];
|
|
93
|
+
statistics?: Statistic[];
|
|
94
|
+
comment?: string;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
export interface PublicBodyZone extends PublicBody {
|
|
98
|
+
mainTexts: Required<Omit<MainText, 'prefectures'>>[];
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export interface PublicBodyPrefecture extends PublicBody {
|
|
102
|
+
mainTexts: Required<Omit<MainText, 'zones'>>[];
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export interface PublicBodyZoneSeason extends PublicBodyZone {
|
|
106
|
+
season: Season;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
export interface Public extends TelegramJSONMain {
|
|
111
|
+
_schema: Schema;
|
|
112
|
+
type: '全般天候情報' | '地方天候情報' | '府県天候情報';
|
|
113
|
+
title: string;
|
|
114
|
+
infoType: '発表' | '訂正' | '取消';
|
|
115
|
+
targetDateTimeDubious?: never;
|
|
116
|
+
targetDuration?: never;
|
|
117
|
+
validDateTime?: string;
|
|
118
|
+
eventId: string;
|
|
119
|
+
serialNo: string;
|
|
120
|
+
infoKind: '天候情報';
|
|
121
|
+
body: PublicBody;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export interface PublicZone extends Public {
|
|
125
|
+
type: '全般天候情報' | '地方天候情報';
|
|
126
|
+
validDateTime: string;
|
|
127
|
+
body: PublicBodyZone;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
export interface PublicPrefecture extends Public {
|
|
131
|
+
type: '府県天候情報';
|
|
132
|
+
validDateTime: string;
|
|
133
|
+
body: PublicBodyPrefecture;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export interface PublicZoneSeason extends Public {
|
|
137
|
+
type: '地方天候情報';
|
|
138
|
+
validDateTime?: never;
|
|
139
|
+
body: PublicBodyZoneSeason;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
export type Main = PublicZone | PublicPrefecture | PublicZoneSeason;
|
|
143
|
+
}
|