@dmdata/telegram-json-types 1.2.1 → 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/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,469 +1,469 @@
|
|
|
1
|
-
import { TelegramJSONMain } from '../../main';
|
|
2
|
-
import { Components, Util } from '../../component';
|
|
3
|
-
|
|
4
|
-
export namespace WeatherWarning {
|
|
5
|
-
export interface Schema {
|
|
6
|
-
type: 'weather-warning';
|
|
7
|
-
version: '1.1.0';
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* 危険度
|
|
13
|
-
*/
|
|
14
|
-
export type RiskTypes =
|
|
15
|
-
'土砂災害危険度' |
|
|
16
|
-
'大雨浸水危険度' |
|
|
17
|
-
'風危険度' |
|
|
18
|
-
'波危険度' |
|
|
19
|
-
'雪危険度' |
|
|
20
|
-
'高潮危険度' |
|
|
21
|
-
'雷危険度' |
|
|
22
|
-
'融雪危険度' |
|
|
23
|
-
'着雪危険度' |
|
|
24
|
-
'着氷危険度' |
|
|
25
|
-
'なだれ危険度' |
|
|
26
|
-
'濃霧危険度' |
|
|
27
|
-
'乾燥危険度' |
|
|
28
|
-
'霜危険度' |
|
|
29
|
-
'低温危険度';
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
// 危険度
|
|
33
|
-
export interface Significancy {
|
|
34
|
-
type: RiskTypes;
|
|
35
|
-
code: '50' | '30' | '20' | '01' | '51' | '41' | '31' | '22' | '21' | '11' | '00';
|
|
36
|
-
name: '特別警報級' | '警報級' | '注意報級' | '注意報級未満' | '警戒レベル5相当' | '警戒レベル4相当' | '警戒レベル3相当' | '警戒レベル2相当' | '警戒レベル2' | '警戒レベル2未満' | '値なし';
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface PeakTime {
|
|
40
|
-
date: string;
|
|
41
|
-
term: string;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
export interface SignificancyBase {
|
|
45
|
-
significancy: Significancy;
|
|
46
|
-
peakTime?: PeakTime;
|
|
47
|
-
attentions?: string[];
|
|
48
|
-
additions?: string[];
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
export type SignificancyLocal = Util.Local<SignificancyBase>;
|
|
52
|
-
export type SignificancyPart = Util.Part<SignificancyBase, SignificancyLocal>;
|
|
53
|
-
|
|
54
|
-
export interface Criterion extends Components.CodeName {
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export interface CriteriaPeriodBase {
|
|
58
|
-
sentence: string;
|
|
59
|
-
criterion: Criterion;
|
|
60
|
-
time: string;
|
|
61
|
-
duration?: string;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
export type CriteriaPeriodLocal = Util.Local<CriteriaPeriodBase>;
|
|
65
|
-
export type CriteriaPeriodPart = Util.Part<CriteriaPeriodBase, CriteriaPeriodLocal>;
|
|
66
|
-
|
|
67
|
-
// 風向
|
|
68
|
-
export type Direction = Util.ValueElement<'風向', '8方位漢字', '風雪'>;
|
|
69
|
-
|
|
70
|
-
export interface WindDirectionBase {
|
|
71
|
-
direction: Direction;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
export type WindDirectionLocal = Util.Local<WindDirectionBase>;
|
|
75
|
-
export type WindDirectionPart = Util.Part<WindDirectionBase, WindDirectionLocal>;
|
|
76
|
-
|
|
77
|
-
// 風速
|
|
78
|
-
export type Speed = Util.ValueElement<'最大風速', 'm/s', '風雪'>;
|
|
79
|
-
|
|
80
|
-
export interface WindSpeedBase {
|
|
81
|
-
speed: Speed;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export type WindSpeedLocal = Util.Local<WindSpeedBase>;
|
|
85
|
-
export type WindSpeedPart = Util.Part<WindSpeedBase, WindSpeedLocal>;
|
|
86
|
-
|
|
87
|
-
// 濃霧
|
|
88
|
-
export interface Visibility {
|
|
89
|
-
type: '視程';
|
|
90
|
-
unit: 'm' | 'km';
|
|
91
|
-
value: string;
|
|
92
|
-
condition: '以下';
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
export interface VisibilityBase {
|
|
96
|
-
visibility: Visibility;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
export type VisibilityLocal = Util.Local<VisibilityBase>;
|
|
100
|
-
export type VisibilityPart = Util.Part<VisibilityBase, VisibilityLocal>;
|
|
101
|
-
|
|
102
|
-
// 波
|
|
103
|
-
export type WaveHeightTypes = '波高' | 'うちあげ高水位' | '最高うちあげ高水位';
|
|
104
|
-
|
|
105
|
-
export type WaveHeight<Type extends WaveHeightTypes> = Util.ValueElement<Type, 'm'>;
|
|
106
|
-
|
|
107
|
-
interface WaveHeightBase<Type extends WaveHeightTypes> {
|
|
108
|
-
waveHeight: WaveHeight<Type>;
|
|
109
|
-
time?: string;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
type WaveHeightLocal<Type extends WaveHeightTypes> = Util.Local<WaveHeightBase<Type>>;
|
|
113
|
-
type WaveHeightPart<Type extends WaveHeightTypes> = Util.Part<WaveHeightBase<Type>, WaveHeightLocal<Type>>;
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
// 潮位
|
|
117
|
-
export type TidalLevelTypes = '潮位' | '最高潮位';
|
|
118
|
-
|
|
119
|
-
export type TidalLevel<Type extends TidalLevelTypes> = Util.ValueElement<Type, 'm'>;
|
|
120
|
-
|
|
121
|
-
export interface TidalLevelBase<Type extends TidalLevelTypes> {
|
|
122
|
-
tidalLevel: TidalLevel<Type>;
|
|
123
|
-
time?: string;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
export type TidalLevelLocal<Type extends TidalLevelTypes> = Util.Local<TidalLevelBase<Type>>;
|
|
127
|
-
export type TidalLevelPart<Type extends TidalLevelTypes> = Util.Part<TidalLevelBase<Type>, TidalLevelLocal<Type>>;
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
// イベント
|
|
131
|
-
export interface Event {
|
|
132
|
-
type: '高潮';
|
|
133
|
-
eventName: '越流' | '越波' | '堤防決壊' | string;
|
|
134
|
-
time?: string;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
export interface EventBase {
|
|
138
|
-
sentence: string;
|
|
139
|
-
location: string;
|
|
140
|
-
event: Event;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
export type EventLocal = Util.Local<EventBase>;
|
|
144
|
-
export type EventPart = Util.Part<EventBase, EventLocal>;
|
|
145
|
-
|
|
146
|
-
// 雪
|
|
147
|
-
export type SnowfallDepthTypes = '6時間最大降雪量' | '12時間最大降雪量' | '24時間最大降雪量';
|
|
148
|
-
|
|
149
|
-
export interface SnowfallDepth<Type extends SnowfallDepthTypes = SnowfallDepthTypes> {
|
|
150
|
-
type: Type;
|
|
151
|
-
unit: 'cm';
|
|
152
|
-
value: string;
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
export interface SnowfallDepthBase<Type extends SnowfallDepthTypes> {
|
|
156
|
-
snowfallDepths: SnowfallDepth<Type>[];
|
|
157
|
-
}
|
|
158
|
-
|
|
159
|
-
export type SnowfallDepthLocal<Type extends SnowfallDepthTypes> = Util.Local<SnowfallDepthBase<Type>>;
|
|
160
|
-
export type SnowfallDepthPart<Type extends SnowfallDepthTypes> = Util.Part<SnowfallDepthBase<Type>, SnowfallDepthLocal<Type>>;
|
|
161
|
-
|
|
162
|
-
// 湿度
|
|
163
|
-
export type HumidityTypes = '実効湿度' | '最小湿度';
|
|
164
|
-
|
|
165
|
-
export type Humidity<Type extends HumidityTypes> = Util.ValueElement<Type, '%'>;
|
|
166
|
-
|
|
167
|
-
export interface HumidityBase<Type extends HumidityTypes> {
|
|
168
|
-
humidity: Humidity<Type>;
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
export type HumidityLocal<Type extends HumidityTypes> = Util.Local<HumidityBase<Type>>;
|
|
172
|
-
export type HumidityPart<Type extends HumidityTypes> = Util.Part<HumidityBase<Type>, HumidityLocal<Type>>;
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
export interface WarningPropertyRisk {
|
|
176
|
-
type: RiskTypes;
|
|
177
|
-
significancyPart: SignificancyPart;
|
|
178
|
-
criteriaPeriod?: CriteriaPeriodPart;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
export interface WarningPropertyWind {
|
|
182
|
-
type: '風';
|
|
183
|
-
windDirectionPart: WindDirectionPart;
|
|
184
|
-
windSpeedPart: WindSpeedPart;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
export interface WarningPropertyVisibility {
|
|
188
|
-
type: '濃霧';
|
|
189
|
-
visibilityPart: VisibilityPart;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
export interface WarningPropertyWave {
|
|
193
|
-
type: '波';
|
|
194
|
-
waveHeightPart: WaveHeightPart<'波高'>;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
export interface WarningPropertyExceedingStormSurgeStandards {
|
|
198
|
-
type: '高潮基準超過';
|
|
199
|
-
waveHeightPart?: WaveHeightPart<'うちあげ高水位'>;
|
|
200
|
-
tidalLevelPart: TidalLevelPart<'潮位'>;
|
|
201
|
-
}
|
|
202
|
-
|
|
203
|
-
export interface WarningPropertyStormSurgePeak {
|
|
204
|
-
type: '高潮ピーク';
|
|
205
|
-
waveHeightPart?: WaveHeightPart<'うちあげ高水位'>;
|
|
206
|
-
tidalLevelPart: TidalLevelPart<'潮位'>;
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
export interface WarningPropertyStormSurgeObservation {
|
|
210
|
-
type: '観測';
|
|
211
|
-
tidalLevelPart?: TidalLevelPart<'最高潮位'>;
|
|
212
|
-
eventPart?: EventPart;
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
export interface WarningPropertySnow {
|
|
216
|
-
type: '雪';
|
|
217
|
-
snowfallDepthPart: SnowfallDepthPart<SnowfallDepthTypes>;
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
export interface WarningPropertyDryAir {
|
|
221
|
-
type: '乾燥';
|
|
222
|
-
humidityParts: [HumidityPart<'実効湿度'>, HumidityPart<'最小湿度'>] | [HumidityPart<'実効湿度'> | HumidityPart<'最小湿度'>];
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
export interface LastKind extends Components.CodeName {
|
|
227
|
-
condition?: '氾濫発生';
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
export type WarningProperty =
|
|
231
|
-
WarningPropertyRisk |
|
|
232
|
-
WarningPropertyWind |
|
|
233
|
-
WarningPropertyVisibility |
|
|
234
|
-
WarningPropertyWave |
|
|
235
|
-
WarningPropertyExceedingStormSurgeStandards |
|
|
236
|
-
WarningPropertyStormSurgePeak |
|
|
237
|
-
WarningPropertyStormSurgeObservation |
|
|
238
|
-
WarningPropertySnow |
|
|
239
|
-
WarningPropertyDryAir;
|
|
240
|
-
|
|
241
|
-
export type WarningPropertiesRain = [WarningPropertyRisk];
|
|
242
|
-
export type WarningPropertiesLandslide = [WarningPropertyRisk];
|
|
243
|
-
export type WarningPropertiesWind = [WarningPropertyRisk, WarningPropertyWind];
|
|
244
|
-
export type WarningPropertiesSnow = [WarningPropertyRisk, WarningPropertySnow];
|
|
245
|
-
export type WarningPropertiesWave = [WarningPropertyRisk, WarningPropertyWave];
|
|
246
|
-
export type WarningPropertiesStormSurge = [WarningPropertyRisk, WarningPropertyExceedingStormSurgeStandards, WarningPropertyStormSurgePeak];
|
|
247
|
-
export type WarningPropertiesThunder = [WarningPropertyRisk];
|
|
248
|
-
export type WarningPropertiesSnowMelting = [WarningPropertyRisk];
|
|
249
|
-
export type WarningPropertiesDenseFog = [WarningPropertyRisk, WarningPropertyVisibility];
|
|
250
|
-
export type WarningPropertiesDryAir = [WarningPropertyRisk, WarningPropertyDryAir];
|
|
251
|
-
export type WarningPropertiesAvalanche = [WarningPropertyRisk];
|
|
252
|
-
export type WarningPropertiesLowTemperature = [WarningPropertyRisk];
|
|
253
|
-
export type WarningPropertiesFrost = [WarningPropertyRisk];
|
|
254
|
-
export type WarningPropertiesIceAccretion = [WarningPropertyRisk];
|
|
255
|
-
export type WarningPropertiesSnowAccretion = [WarningPropertyRisk];
|
|
256
|
-
export type WarningPropertiesStormSurgeSection =
|
|
257
|
-
[WarningPropertyRisk, WarningPropertyExceedingStormSurgeStandards, WarningPropertyStormSurgePeak] |
|
|
258
|
-
[WarningPropertyRisk, WarningPropertyExceedingStormSurgeStandards, WarningPropertyStormSurgePeak, WarningPropertyStormSurgeObservation];
|
|
259
|
-
|
|
260
|
-
export type WarningProperties =
|
|
261
|
-
WarningPropertiesRain |
|
|
262
|
-
WarningPropertiesLandslide |
|
|
263
|
-
WarningPropertiesWind |
|
|
264
|
-
WarningPropertiesSnow |
|
|
265
|
-
WarningPropertiesWave |
|
|
266
|
-
WarningPropertiesStormSurge |
|
|
267
|
-
WarningPropertiesThunder |
|
|
268
|
-
WarningPropertiesSnowMelting |
|
|
269
|
-
WarningPropertiesDenseFog |
|
|
270
|
-
WarningPropertiesDryAir |
|
|
271
|
-
WarningPropertiesAvalanche |
|
|
272
|
-
WarningPropertiesLowTemperature |
|
|
273
|
-
WarningPropertiesFrost |
|
|
274
|
-
WarningPropertiesIceAccretion |
|
|
275
|
-
WarningPropertiesSnowAccretion;
|
|
276
|
-
|
|
277
|
-
export type WarningKindBase<P extends WarningProperty[] | never> =
|
|
278
|
-
Components.CodeName & { dateTime?: string; condition?: '氾濫発生'; } & (
|
|
279
|
-
{
|
|
280
|
-
status: '発表' | '継続' | '特別警報から警報' | '特別警報から注意報' | '警報から注意報' | '特別警報から危険警報' | '危険警報から警報' | '危険警報から注意報';
|
|
281
|
-
lastKind?: LastKind;
|
|
282
|
-
additions?: string[];
|
|
283
|
-
properties: P;
|
|
284
|
-
} |
|
|
285
|
-
{
|
|
286
|
-
status: '解除';
|
|
287
|
-
lastKind: LastKind;
|
|
288
|
-
additions?: never;
|
|
289
|
-
properties?: never;
|
|
290
|
-
}
|
|
291
|
-
);
|
|
292
|
-
|
|
293
|
-
export type WarningAreaKind = Omit<WarningKindBase<[]>, 'properties'>;
|
|
294
|
-
|
|
295
|
-
export type WarningArea<K extends WarningAreaKind> =
|
|
296
|
-
Components.CodeName & { dateTime?: string; } & (
|
|
297
|
-
{
|
|
298
|
-
kinds: K[];
|
|
299
|
-
fullStatus: '一部' | '全域';
|
|
300
|
-
editingMark: boolean;
|
|
301
|
-
changeStatus: '警報・注意報種別に変化有' | '警報・注意報種別に変化無、量的予想事項等に変化有' | '変化無';
|
|
302
|
-
condition?: never;
|
|
303
|
-
} |
|
|
304
|
-
{
|
|
305
|
-
kinds: [],
|
|
306
|
-
fullStatus?: never;
|
|
307
|
-
editingMark?: never;
|
|
308
|
-
changeStatus?: never;
|
|
309
|
-
condition: '発表警報・注意報はなし';
|
|
310
|
-
}
|
|
311
|
-
);
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
export type WarningCity<K extends WarningKindBase<any[]>[]> =
|
|
315
|
-
Components.CodeName & { dateTime?: string; } &
|
|
316
|
-
({
|
|
317
|
-
kinds: K;
|
|
318
|
-
changeStatus: '警報・注意報種別に変化有' | '警報・注意報種別に変化無、量的予想事項等に変化有' | '変化無';
|
|
319
|
-
condition?: never;
|
|
320
|
-
} |
|
|
321
|
-
{
|
|
322
|
-
kinds: [];
|
|
323
|
-
changeStatus?: never;
|
|
324
|
-
condition: '発表警報・注意報はなし';
|
|
325
|
-
});
|
|
326
|
-
|
|
327
|
-
export type WarningCityKindRain = WarningKindBase<WarningPropertiesRain>;
|
|
328
|
-
export type WarningCityKindLandslide = WarningKindBase<WarningPropertiesLandslide>;
|
|
329
|
-
export type WarningCityKindWind = WarningKindBase<WarningPropertiesWind>;
|
|
330
|
-
export type WarningCityKindSnow = WarningKindBase<WarningPropertiesSnow>;
|
|
331
|
-
export type WarningCityKindWave = WarningKindBase<WarningPropertiesWave>;
|
|
332
|
-
export type WarningCityKindStormSurge = WarningKindBase<WarningPropertiesStormSurge>;
|
|
333
|
-
export type WarningCityKindThunder = WarningKindBase<WarningPropertiesThunder>;
|
|
334
|
-
export type WarningCityKindSnowMelting = WarningKindBase<WarningPropertiesSnowMelting>;
|
|
335
|
-
export type WarningCityKindDenseFog = WarningKindBase<WarningPropertiesDenseFog>;
|
|
336
|
-
export type WarningCityKindDryAir = WarningKindBase<WarningPropertiesDryAir>;
|
|
337
|
-
export type WarningCityKindAvalanche = WarningKindBase<WarningPropertiesAvalanche>;
|
|
338
|
-
export type WarningCityKindLowTemperature = WarningKindBase<WarningPropertiesLowTemperature>;
|
|
339
|
-
export type WarningCityKindFrost = WarningKindBase<WarningPropertiesFrost>;
|
|
340
|
-
export type WarningCityKindIceAccretion = WarningKindBase<WarningPropertiesIceAccretion>;
|
|
341
|
-
export type WarningCityKindSnowAccretion = WarningKindBase<WarningPropertiesSnowAccretion>;
|
|
342
|
-
|
|
343
|
-
export type WarningCityKindAdvisory =
|
|
344
|
-
WarningCityKindThunder |
|
|
345
|
-
WarningCityKindSnowMelting |
|
|
346
|
-
WarningCityKindDenseFog |
|
|
347
|
-
WarningCityKindDryAir |
|
|
348
|
-
WarningCityKindAvalanche |
|
|
349
|
-
WarningCityKindLowTemperature |
|
|
350
|
-
WarningCityKindFrost |
|
|
351
|
-
WarningCityKindIceAccretion |
|
|
352
|
-
WarningCityKindSnowAccretion;
|
|
353
|
-
|
|
354
|
-
export type WarningCityKind =
|
|
355
|
-
WarningCityKindRain |
|
|
356
|
-
WarningCityKindLandslide |
|
|
357
|
-
WarningCityKindWind |
|
|
358
|
-
WarningCityKindSnow |
|
|
359
|
-
WarningCityKindWave |
|
|
360
|
-
WarningCityKindStormSurge |
|
|
361
|
-
WarningCityKindAdvisory;
|
|
362
|
-
|
|
363
|
-
export type WarningStormSurgeSectionKind = WarningKindBase<WarningPropertiesStormSurgeSection>;
|
|
364
|
-
|
|
365
|
-
export interface WarningStormSurgeSectionSubCity {
|
|
366
|
-
names: string[];
|
|
367
|
-
}
|
|
368
|
-
|
|
369
|
-
export type WarningStormSurgeSection =
|
|
370
|
-
{ code: string; codeType: '高潮予報区間'; name: string; subCity: WarningStormSurgeSectionSubCity; location: string; dateTime?: string; } &
|
|
371
|
-
({
|
|
372
|
-
kinds: [WarningStormSurgeSectionKind];
|
|
373
|
-
changeStatus: '警報・注意報種別に変化有' | '警報・注意報種別に変化無、量的予想事項等に変化有' | '変化無';
|
|
374
|
-
condition?: never;
|
|
375
|
-
} |
|
|
376
|
-
{
|
|
377
|
-
kinds: [];
|
|
378
|
-
changeStatus?: never;
|
|
379
|
-
condition: '発表警報・注意報はなし';
|
|
380
|
-
});
|
|
381
|
-
|
|
382
|
-
export interface Office {
|
|
383
|
-
type: '都道府県' | '補足情報担当' | '水位関係' | '気象関係' | string;
|
|
384
|
-
name: string;
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
export interface TidalWarningReferenceSubCity {
|
|
388
|
-
names: string[];
|
|
389
|
-
codes: string[];
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
export interface CriteriaWaterLevel {
|
|
393
|
-
type: '堤防天端高' | '設計高潮位' | string;
|
|
394
|
-
unit: 'm';
|
|
395
|
-
value: string | null;
|
|
396
|
-
condition: '有効' | '値なし';
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
export interface Criteria {
|
|
400
|
-
waterLevels: CriteriaWaterLevel[];
|
|
401
|
-
}
|
|
402
|
-
|
|
403
|
-
export interface HydrometricStation {
|
|
404
|
-
name: string;
|
|
405
|
-
location: string;
|
|
406
|
-
chargeSections?: string[];
|
|
407
|
-
criteria: Criteria[];
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
export interface TidalWarningReference extends Components.CodeName {
|
|
411
|
-
codeType: '高潮予報区間';
|
|
412
|
-
subCity: TidalWarningReferenceSubCity;
|
|
413
|
-
location: string;
|
|
414
|
-
chargeSections: string[];
|
|
415
|
-
stations: HydrometricStation[];
|
|
416
|
-
}
|
|
417
|
-
|
|
418
|
-
export interface CommentText {
|
|
419
|
-
type: 'レベル5土砂災害危険警報の補足情報' | 'レベル4土砂災害危険警報の補足情報' | 'レベル3土砂災害危険警報の補足情報' | 'レベル2土砂災害危険警報の補足情報';
|
|
420
|
-
text: string;
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
export interface Comment {
|
|
424
|
-
texts: CommentText[];
|
|
425
|
-
}
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
export interface PublicBodyWarningBase<CityKind extends WarningKindBase<any[]>[] = WarningCityKind[]> {
|
|
429
|
-
prefectures: WarningArea<WarningAreaKind>[];
|
|
430
|
-
regions: WarningArea<WarningAreaKind>[];
|
|
431
|
-
areas: WarningArea<WarningAreaKind>[];
|
|
432
|
-
cities: WarningCity<CityKind>[];
|
|
433
|
-
stormSurgeSections?: WarningStormSurgeSection[];
|
|
434
|
-
offices?: Office[];
|
|
435
|
-
references?: TidalWarningReference[];
|
|
436
|
-
comment?: Comment;
|
|
437
|
-
}
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
type PublicBodyWarningOmitKey = 'stormSurgeSections' | 'offices' | 'references' | 'comment';
|
|
441
|
-
export type PublicBodyVPWW55 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindRain]>, PublicBodyWarningOmitKey>;
|
|
442
|
-
export type PublicBodyVPWW56 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindLandslide]>, 'stormSurgeSections' | 'references'>;
|
|
443
|
-
export type PublicBodyVPWW57 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindStormSurge]>, 'comment'>;
|
|
444
|
-
export type PublicBodyVPWW58 = Util.Prohibit<PublicBodyWarningBase<WarningCityKindWind[]>, PublicBodyWarningOmitKey>;
|
|
445
|
-
export type PublicBodyVPWW59 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindWave]>, PublicBodyWarningOmitKey>;
|
|
446
|
-
export type PublicBodyVPWW60 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindSnow]>, PublicBodyWarningOmitKey>;
|
|
447
|
-
export type PublicBodyVPWW61 = Util.Prohibit<PublicBodyWarningBase<WarningCityKindAdvisory[]>, PublicBodyWarningOmitKey>;
|
|
448
|
-
export type PublicBodyVPWS50 = Util.Prohibit<PublicBodyWarningBase, 'stormSurgeSections' | 'offices' | 'references' | 'comment'>;
|
|
449
|
-
export type PublicBodyWarning =
|
|
450
|
-
PublicBodyVPWW55 | PublicBodyVPWW56 | PublicBodyVPWW57 | PublicBodyVPWW58 | PublicBodyVPWW59 | PublicBodyVPWW60 | PublicBodyVPWW61 | PublicBodyVPWS50;
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
export interface PublicWarning extends TelegramJSONMain {
|
|
454
|
-
_schema: Schema;
|
|
455
|
-
type: '気象警報・注意報(R06)(大雨)' | '気象警報・注意報(R06)(土砂)' | '気象警報・注意報(R06)(高潮)' | '気象警報・注意報(R06)(暴風)' | '気象警報・注意報(R06)(波浪)' | '気象警報・注意報(R06)(大雪)' | '気象警報・注意報(R06)(その他注意報)' | '気象警報・注意報(R06)(集約通報)';
|
|
456
|
-
title: string;
|
|
457
|
-
infoType: '発表' | '訂正';
|
|
458
|
-
targetDateTimeDubious?: never;
|
|
459
|
-
targetDuration?: never;
|
|
460
|
-
validDateTime?: never;
|
|
461
|
-
eventId: null;
|
|
462
|
-
serialNo: null;
|
|
463
|
-
infoKind: '気象警報・注意報';
|
|
464
|
-
body: PublicBodyWarning;
|
|
465
|
-
}
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
export type Main = PublicWarning;
|
|
469
|
-
}
|
|
1
|
+
import { TelegramJSONMain } from '../../main';
|
|
2
|
+
import { Components, Util } from '../../component';
|
|
3
|
+
|
|
4
|
+
export namespace WeatherWarning {
|
|
5
|
+
export interface Schema {
|
|
6
|
+
type: 'weather-warning';
|
|
7
|
+
version: '1.1.0';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* 危険度
|
|
13
|
+
*/
|
|
14
|
+
export type RiskTypes =
|
|
15
|
+
'土砂災害危険度' |
|
|
16
|
+
'大雨浸水危険度' |
|
|
17
|
+
'風危険度' |
|
|
18
|
+
'波危険度' |
|
|
19
|
+
'雪危険度' |
|
|
20
|
+
'高潮危険度' |
|
|
21
|
+
'雷危険度' |
|
|
22
|
+
'融雪危険度' |
|
|
23
|
+
'着雪危険度' |
|
|
24
|
+
'着氷危険度' |
|
|
25
|
+
'なだれ危険度' |
|
|
26
|
+
'濃霧危険度' |
|
|
27
|
+
'乾燥危険度' |
|
|
28
|
+
'霜危険度' |
|
|
29
|
+
'低温危険度';
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
// 危険度
|
|
33
|
+
export interface Significancy {
|
|
34
|
+
type: RiskTypes;
|
|
35
|
+
code: '50' | '30' | '20' | '01' | '51' | '41' | '31' | '22' | '21' | '11' | '00';
|
|
36
|
+
name: '特別警報級' | '警報級' | '注意報級' | '注意報級未満' | '警戒レベル5相当' | '警戒レベル4相当' | '警戒レベル3相当' | '警戒レベル2相当' | '警戒レベル2' | '警戒レベル2未満' | '値なし';
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface PeakTime {
|
|
40
|
+
date: string;
|
|
41
|
+
term: string;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export interface SignificancyBase {
|
|
45
|
+
significancy: Significancy;
|
|
46
|
+
peakTime?: PeakTime;
|
|
47
|
+
attentions?: string[];
|
|
48
|
+
additions?: string[];
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export type SignificancyLocal = Util.Local<SignificancyBase>;
|
|
52
|
+
export type SignificancyPart = Util.Part<SignificancyBase, SignificancyLocal>;
|
|
53
|
+
|
|
54
|
+
export interface Criterion extends Components.CodeName {
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export interface CriteriaPeriodBase {
|
|
58
|
+
sentence: string;
|
|
59
|
+
criterion: Criterion;
|
|
60
|
+
time: string;
|
|
61
|
+
duration?: string;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export type CriteriaPeriodLocal = Util.Local<CriteriaPeriodBase>;
|
|
65
|
+
export type CriteriaPeriodPart = Util.Part<CriteriaPeriodBase, CriteriaPeriodLocal>;
|
|
66
|
+
|
|
67
|
+
// 風向
|
|
68
|
+
export type Direction = Util.ValueElement<'風向', '8方位漢字', '風雪'>;
|
|
69
|
+
|
|
70
|
+
export interface WindDirectionBase {
|
|
71
|
+
direction: Direction;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export type WindDirectionLocal = Util.Local<WindDirectionBase>;
|
|
75
|
+
export type WindDirectionPart = Util.Part<WindDirectionBase, WindDirectionLocal>;
|
|
76
|
+
|
|
77
|
+
// 風速
|
|
78
|
+
export type Speed = Util.ValueElement<'最大風速', 'm/s', '風雪'>;
|
|
79
|
+
|
|
80
|
+
export interface WindSpeedBase {
|
|
81
|
+
speed: Speed;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export type WindSpeedLocal = Util.Local<WindSpeedBase>;
|
|
85
|
+
export type WindSpeedPart = Util.Part<WindSpeedBase, WindSpeedLocal>;
|
|
86
|
+
|
|
87
|
+
// 濃霧
|
|
88
|
+
export interface Visibility {
|
|
89
|
+
type: '視程';
|
|
90
|
+
unit: 'm' | 'km';
|
|
91
|
+
value: string;
|
|
92
|
+
condition: '以下';
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export interface VisibilityBase {
|
|
96
|
+
visibility: Visibility;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
export type VisibilityLocal = Util.Local<VisibilityBase>;
|
|
100
|
+
export type VisibilityPart = Util.Part<VisibilityBase, VisibilityLocal>;
|
|
101
|
+
|
|
102
|
+
// 波
|
|
103
|
+
export type WaveHeightTypes = '波高' | 'うちあげ高水位' | '最高うちあげ高水位';
|
|
104
|
+
|
|
105
|
+
export type WaveHeight<Type extends WaveHeightTypes> = Util.ValueElement<Type, 'm'>;
|
|
106
|
+
|
|
107
|
+
interface WaveHeightBase<Type extends WaveHeightTypes> {
|
|
108
|
+
waveHeight: WaveHeight<Type>;
|
|
109
|
+
time?: string;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
type WaveHeightLocal<Type extends WaveHeightTypes> = Util.Local<WaveHeightBase<Type>>;
|
|
113
|
+
type WaveHeightPart<Type extends WaveHeightTypes> = Util.Part<WaveHeightBase<Type>, WaveHeightLocal<Type>>;
|
|
114
|
+
|
|
115
|
+
|
|
116
|
+
// 潮位
|
|
117
|
+
export type TidalLevelTypes = '潮位' | '最高潮位';
|
|
118
|
+
|
|
119
|
+
export type TidalLevel<Type extends TidalLevelTypes> = Util.ValueElement<Type, 'm'>;
|
|
120
|
+
|
|
121
|
+
export interface TidalLevelBase<Type extends TidalLevelTypes> {
|
|
122
|
+
tidalLevel: TidalLevel<Type>;
|
|
123
|
+
time?: string;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export type TidalLevelLocal<Type extends TidalLevelTypes> = Util.Local<TidalLevelBase<Type>>;
|
|
127
|
+
export type TidalLevelPart<Type extends TidalLevelTypes> = Util.Part<TidalLevelBase<Type>, TidalLevelLocal<Type>>;
|
|
128
|
+
|
|
129
|
+
|
|
130
|
+
// イベント
|
|
131
|
+
export interface Event {
|
|
132
|
+
type: '高潮';
|
|
133
|
+
eventName: '越流' | '越波' | '堤防決壊' | string;
|
|
134
|
+
time?: string;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
export interface EventBase {
|
|
138
|
+
sentence: string;
|
|
139
|
+
location: string;
|
|
140
|
+
event: Event;
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
export type EventLocal = Util.Local<EventBase>;
|
|
144
|
+
export type EventPart = Util.Part<EventBase, EventLocal>;
|
|
145
|
+
|
|
146
|
+
// 雪
|
|
147
|
+
export type SnowfallDepthTypes = '6時間最大降雪量' | '12時間最大降雪量' | '24時間最大降雪量';
|
|
148
|
+
|
|
149
|
+
export interface SnowfallDepth<Type extends SnowfallDepthTypes = SnowfallDepthTypes> {
|
|
150
|
+
type: Type;
|
|
151
|
+
unit: 'cm';
|
|
152
|
+
value: string;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export interface SnowfallDepthBase<Type extends SnowfallDepthTypes> {
|
|
156
|
+
snowfallDepths: SnowfallDepth<Type>[];
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
export type SnowfallDepthLocal<Type extends SnowfallDepthTypes> = Util.Local<SnowfallDepthBase<Type>>;
|
|
160
|
+
export type SnowfallDepthPart<Type extends SnowfallDepthTypes> = Util.Part<SnowfallDepthBase<Type>, SnowfallDepthLocal<Type>>;
|
|
161
|
+
|
|
162
|
+
// 湿度
|
|
163
|
+
export type HumidityTypes = '実効湿度' | '最小湿度';
|
|
164
|
+
|
|
165
|
+
export type Humidity<Type extends HumidityTypes> = Util.ValueElement<Type, '%'>;
|
|
166
|
+
|
|
167
|
+
export interface HumidityBase<Type extends HumidityTypes> {
|
|
168
|
+
humidity: Humidity<Type>;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
export type HumidityLocal<Type extends HumidityTypes> = Util.Local<HumidityBase<Type>>;
|
|
172
|
+
export type HumidityPart<Type extends HumidityTypes> = Util.Part<HumidityBase<Type>, HumidityLocal<Type>>;
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
export interface WarningPropertyRisk {
|
|
176
|
+
type: RiskTypes;
|
|
177
|
+
significancyPart: SignificancyPart;
|
|
178
|
+
criteriaPeriod?: CriteriaPeriodPart;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
export interface WarningPropertyWind {
|
|
182
|
+
type: '風';
|
|
183
|
+
windDirectionPart: WindDirectionPart;
|
|
184
|
+
windSpeedPart: WindSpeedPart;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
export interface WarningPropertyVisibility {
|
|
188
|
+
type: '濃霧';
|
|
189
|
+
visibilityPart: VisibilityPart;
|
|
190
|
+
}
|
|
191
|
+
|
|
192
|
+
export interface WarningPropertyWave {
|
|
193
|
+
type: '波';
|
|
194
|
+
waveHeightPart: WaveHeightPart<'波高'>;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
export interface WarningPropertyExceedingStormSurgeStandards {
|
|
198
|
+
type: '高潮基準超過';
|
|
199
|
+
waveHeightPart?: WaveHeightPart<'うちあげ高水位'>;
|
|
200
|
+
tidalLevelPart: TidalLevelPart<'潮位'>;
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
export interface WarningPropertyStormSurgePeak {
|
|
204
|
+
type: '高潮ピーク';
|
|
205
|
+
waveHeightPart?: WaveHeightPart<'うちあげ高水位'>;
|
|
206
|
+
tidalLevelPart: TidalLevelPart<'潮位'>;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
export interface WarningPropertyStormSurgeObservation {
|
|
210
|
+
type: '観測';
|
|
211
|
+
tidalLevelPart?: TidalLevelPart<'最高潮位'>;
|
|
212
|
+
eventPart?: EventPart;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
export interface WarningPropertySnow {
|
|
216
|
+
type: '雪';
|
|
217
|
+
snowfallDepthPart: SnowfallDepthPart<SnowfallDepthTypes>;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
export interface WarningPropertyDryAir {
|
|
221
|
+
type: '乾燥';
|
|
222
|
+
humidityParts: [HumidityPart<'実効湿度'>, HumidityPart<'最小湿度'>] | [HumidityPart<'実効湿度'> | HumidityPart<'最小湿度'>];
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
export interface LastKind extends Components.CodeName {
|
|
227
|
+
condition?: '氾濫発生';
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
export type WarningProperty =
|
|
231
|
+
WarningPropertyRisk |
|
|
232
|
+
WarningPropertyWind |
|
|
233
|
+
WarningPropertyVisibility |
|
|
234
|
+
WarningPropertyWave |
|
|
235
|
+
WarningPropertyExceedingStormSurgeStandards |
|
|
236
|
+
WarningPropertyStormSurgePeak |
|
|
237
|
+
WarningPropertyStormSurgeObservation |
|
|
238
|
+
WarningPropertySnow |
|
|
239
|
+
WarningPropertyDryAir;
|
|
240
|
+
|
|
241
|
+
export type WarningPropertiesRain = [WarningPropertyRisk];
|
|
242
|
+
export type WarningPropertiesLandslide = [WarningPropertyRisk];
|
|
243
|
+
export type WarningPropertiesWind = [WarningPropertyRisk, WarningPropertyWind];
|
|
244
|
+
export type WarningPropertiesSnow = [WarningPropertyRisk, WarningPropertySnow];
|
|
245
|
+
export type WarningPropertiesWave = [WarningPropertyRisk, WarningPropertyWave];
|
|
246
|
+
export type WarningPropertiesStormSurge = [WarningPropertyRisk, WarningPropertyExceedingStormSurgeStandards, WarningPropertyStormSurgePeak];
|
|
247
|
+
export type WarningPropertiesThunder = [WarningPropertyRisk];
|
|
248
|
+
export type WarningPropertiesSnowMelting = [WarningPropertyRisk];
|
|
249
|
+
export type WarningPropertiesDenseFog = [WarningPropertyRisk, WarningPropertyVisibility];
|
|
250
|
+
export type WarningPropertiesDryAir = [WarningPropertyRisk, WarningPropertyDryAir];
|
|
251
|
+
export type WarningPropertiesAvalanche = [WarningPropertyRisk];
|
|
252
|
+
export type WarningPropertiesLowTemperature = [WarningPropertyRisk];
|
|
253
|
+
export type WarningPropertiesFrost = [WarningPropertyRisk];
|
|
254
|
+
export type WarningPropertiesIceAccretion = [WarningPropertyRisk];
|
|
255
|
+
export type WarningPropertiesSnowAccretion = [WarningPropertyRisk];
|
|
256
|
+
export type WarningPropertiesStormSurgeSection =
|
|
257
|
+
[WarningPropertyRisk, WarningPropertyExceedingStormSurgeStandards, WarningPropertyStormSurgePeak] |
|
|
258
|
+
[WarningPropertyRisk, WarningPropertyExceedingStormSurgeStandards, WarningPropertyStormSurgePeak, WarningPropertyStormSurgeObservation];
|
|
259
|
+
|
|
260
|
+
export type WarningProperties =
|
|
261
|
+
WarningPropertiesRain |
|
|
262
|
+
WarningPropertiesLandslide |
|
|
263
|
+
WarningPropertiesWind |
|
|
264
|
+
WarningPropertiesSnow |
|
|
265
|
+
WarningPropertiesWave |
|
|
266
|
+
WarningPropertiesStormSurge |
|
|
267
|
+
WarningPropertiesThunder |
|
|
268
|
+
WarningPropertiesSnowMelting |
|
|
269
|
+
WarningPropertiesDenseFog |
|
|
270
|
+
WarningPropertiesDryAir |
|
|
271
|
+
WarningPropertiesAvalanche |
|
|
272
|
+
WarningPropertiesLowTemperature |
|
|
273
|
+
WarningPropertiesFrost |
|
|
274
|
+
WarningPropertiesIceAccretion |
|
|
275
|
+
WarningPropertiesSnowAccretion;
|
|
276
|
+
|
|
277
|
+
export type WarningKindBase<P extends WarningProperty[] | never> =
|
|
278
|
+
Components.CodeName & { dateTime?: string; condition?: '氾濫発生'; } & (
|
|
279
|
+
{
|
|
280
|
+
status: '発表' | '継続' | '特別警報から警報' | '特別警報から注意報' | '警報から注意報' | '特別警報から危険警報' | '危険警報から警報' | '危険警報から注意報';
|
|
281
|
+
lastKind?: LastKind;
|
|
282
|
+
additions?: string[];
|
|
283
|
+
properties: P;
|
|
284
|
+
} |
|
|
285
|
+
{
|
|
286
|
+
status: '解除';
|
|
287
|
+
lastKind: LastKind;
|
|
288
|
+
additions?: never;
|
|
289
|
+
properties?: never;
|
|
290
|
+
}
|
|
291
|
+
);
|
|
292
|
+
|
|
293
|
+
export type WarningAreaKind = Omit<WarningKindBase<[]>, 'properties'>;
|
|
294
|
+
|
|
295
|
+
export type WarningArea<K extends WarningAreaKind> =
|
|
296
|
+
Components.CodeName & { dateTime?: string; } & (
|
|
297
|
+
{
|
|
298
|
+
kinds: K[];
|
|
299
|
+
fullStatus: '一部' | '全域';
|
|
300
|
+
editingMark: boolean;
|
|
301
|
+
changeStatus: '警報・注意報種別に変化有' | '警報・注意報種別に変化無、量的予想事項等に変化有' | '変化無';
|
|
302
|
+
condition?: never;
|
|
303
|
+
} |
|
|
304
|
+
{
|
|
305
|
+
kinds: [],
|
|
306
|
+
fullStatus?: never;
|
|
307
|
+
editingMark?: never;
|
|
308
|
+
changeStatus?: never;
|
|
309
|
+
condition: '発表警報・注意報はなし';
|
|
310
|
+
}
|
|
311
|
+
);
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
export type WarningCity<K extends WarningKindBase<any[]>[]> =
|
|
315
|
+
Components.CodeName & { dateTime?: string; } &
|
|
316
|
+
({
|
|
317
|
+
kinds: K;
|
|
318
|
+
changeStatus: '警報・注意報種別に変化有' | '警報・注意報種別に変化無、量的予想事項等に変化有' | '変化無';
|
|
319
|
+
condition?: never;
|
|
320
|
+
} |
|
|
321
|
+
{
|
|
322
|
+
kinds: [];
|
|
323
|
+
changeStatus?: never;
|
|
324
|
+
condition: '発表警報・注意報はなし';
|
|
325
|
+
});
|
|
326
|
+
|
|
327
|
+
export type WarningCityKindRain = WarningKindBase<WarningPropertiesRain>;
|
|
328
|
+
export type WarningCityKindLandslide = WarningKindBase<WarningPropertiesLandslide>;
|
|
329
|
+
export type WarningCityKindWind = WarningKindBase<WarningPropertiesWind>;
|
|
330
|
+
export type WarningCityKindSnow = WarningKindBase<WarningPropertiesSnow>;
|
|
331
|
+
export type WarningCityKindWave = WarningKindBase<WarningPropertiesWave>;
|
|
332
|
+
export type WarningCityKindStormSurge = WarningKindBase<WarningPropertiesStormSurge>;
|
|
333
|
+
export type WarningCityKindThunder = WarningKindBase<WarningPropertiesThunder>;
|
|
334
|
+
export type WarningCityKindSnowMelting = WarningKindBase<WarningPropertiesSnowMelting>;
|
|
335
|
+
export type WarningCityKindDenseFog = WarningKindBase<WarningPropertiesDenseFog>;
|
|
336
|
+
export type WarningCityKindDryAir = WarningKindBase<WarningPropertiesDryAir>;
|
|
337
|
+
export type WarningCityKindAvalanche = WarningKindBase<WarningPropertiesAvalanche>;
|
|
338
|
+
export type WarningCityKindLowTemperature = WarningKindBase<WarningPropertiesLowTemperature>;
|
|
339
|
+
export type WarningCityKindFrost = WarningKindBase<WarningPropertiesFrost>;
|
|
340
|
+
export type WarningCityKindIceAccretion = WarningKindBase<WarningPropertiesIceAccretion>;
|
|
341
|
+
export type WarningCityKindSnowAccretion = WarningKindBase<WarningPropertiesSnowAccretion>;
|
|
342
|
+
|
|
343
|
+
export type WarningCityKindAdvisory =
|
|
344
|
+
WarningCityKindThunder |
|
|
345
|
+
WarningCityKindSnowMelting |
|
|
346
|
+
WarningCityKindDenseFog |
|
|
347
|
+
WarningCityKindDryAir |
|
|
348
|
+
WarningCityKindAvalanche |
|
|
349
|
+
WarningCityKindLowTemperature |
|
|
350
|
+
WarningCityKindFrost |
|
|
351
|
+
WarningCityKindIceAccretion |
|
|
352
|
+
WarningCityKindSnowAccretion;
|
|
353
|
+
|
|
354
|
+
export type WarningCityKind =
|
|
355
|
+
WarningCityKindRain |
|
|
356
|
+
WarningCityKindLandslide |
|
|
357
|
+
WarningCityKindWind |
|
|
358
|
+
WarningCityKindSnow |
|
|
359
|
+
WarningCityKindWave |
|
|
360
|
+
WarningCityKindStormSurge |
|
|
361
|
+
WarningCityKindAdvisory;
|
|
362
|
+
|
|
363
|
+
export type WarningStormSurgeSectionKind = WarningKindBase<WarningPropertiesStormSurgeSection>;
|
|
364
|
+
|
|
365
|
+
export interface WarningStormSurgeSectionSubCity {
|
|
366
|
+
names: string[];
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
export type WarningStormSurgeSection =
|
|
370
|
+
{ code: string; codeType: '高潮予報区間'; name: string; subCity: WarningStormSurgeSectionSubCity; location: string; dateTime?: string; } &
|
|
371
|
+
({
|
|
372
|
+
kinds: [WarningStormSurgeSectionKind];
|
|
373
|
+
changeStatus: '警報・注意報種別に変化有' | '警報・注意報種別に変化無、量的予想事項等に変化有' | '変化無';
|
|
374
|
+
condition?: never;
|
|
375
|
+
} |
|
|
376
|
+
{
|
|
377
|
+
kinds: [];
|
|
378
|
+
changeStatus?: never;
|
|
379
|
+
condition: '発表警報・注意報はなし';
|
|
380
|
+
});
|
|
381
|
+
|
|
382
|
+
export interface Office {
|
|
383
|
+
type: '都道府県' | '補足情報担当' | '水位関係' | '気象関係' | string;
|
|
384
|
+
name: string;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
export interface TidalWarningReferenceSubCity {
|
|
388
|
+
names: string[];
|
|
389
|
+
codes: string[];
|
|
390
|
+
}
|
|
391
|
+
|
|
392
|
+
export interface CriteriaWaterLevel {
|
|
393
|
+
type: '堤防天端高' | '設計高潮位' | string;
|
|
394
|
+
unit: 'm';
|
|
395
|
+
value: string | null;
|
|
396
|
+
condition: '有効' | '値なし';
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
export interface Criteria {
|
|
400
|
+
waterLevels: CriteriaWaterLevel[];
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
export interface HydrometricStation {
|
|
404
|
+
name: string;
|
|
405
|
+
location: string;
|
|
406
|
+
chargeSections?: string[];
|
|
407
|
+
criteria: Criteria[];
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
export interface TidalWarningReference extends Components.CodeName {
|
|
411
|
+
codeType: '高潮予報区間';
|
|
412
|
+
subCity: TidalWarningReferenceSubCity;
|
|
413
|
+
location: string;
|
|
414
|
+
chargeSections: string[];
|
|
415
|
+
stations: HydrometricStation[];
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
export interface CommentText {
|
|
419
|
+
type: 'レベル5土砂災害危険警報の補足情報' | 'レベル4土砂災害危険警報の補足情報' | 'レベル3土砂災害危険警報の補足情報' | 'レベル2土砂災害危険警報の補足情報';
|
|
420
|
+
text: string;
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
export interface Comment {
|
|
424
|
+
texts: CommentText[];
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
|
|
428
|
+
export interface PublicBodyWarningBase<CityKind extends WarningKindBase<any[]>[] = WarningCityKind[]> {
|
|
429
|
+
prefectures: WarningArea<WarningAreaKind>[];
|
|
430
|
+
regions: WarningArea<WarningAreaKind>[];
|
|
431
|
+
areas: WarningArea<WarningAreaKind>[];
|
|
432
|
+
cities: WarningCity<CityKind>[];
|
|
433
|
+
stormSurgeSections?: WarningStormSurgeSection[];
|
|
434
|
+
offices?: Office[];
|
|
435
|
+
references?: TidalWarningReference[];
|
|
436
|
+
comment?: Comment;
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
|
|
440
|
+
type PublicBodyWarningOmitKey = 'stormSurgeSections' | 'offices' | 'references' | 'comment';
|
|
441
|
+
export type PublicBodyVPWW55 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindRain]>, PublicBodyWarningOmitKey>;
|
|
442
|
+
export type PublicBodyVPWW56 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindLandslide]>, 'stormSurgeSections' | 'references'>;
|
|
443
|
+
export type PublicBodyVPWW57 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindStormSurge]>, 'comment'>;
|
|
444
|
+
export type PublicBodyVPWW58 = Util.Prohibit<PublicBodyWarningBase<WarningCityKindWind[]>, PublicBodyWarningOmitKey>;
|
|
445
|
+
export type PublicBodyVPWW59 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindWave]>, PublicBodyWarningOmitKey>;
|
|
446
|
+
export type PublicBodyVPWW60 = Util.Prohibit<PublicBodyWarningBase<[WarningCityKindSnow]>, PublicBodyWarningOmitKey>;
|
|
447
|
+
export type PublicBodyVPWW61 = Util.Prohibit<PublicBodyWarningBase<WarningCityKindAdvisory[]>, PublicBodyWarningOmitKey>;
|
|
448
|
+
export type PublicBodyVPWS50 = Util.Prohibit<PublicBodyWarningBase, 'stormSurgeSections' | 'offices' | 'references' | 'comment'>;
|
|
449
|
+
export type PublicBodyWarning =
|
|
450
|
+
PublicBodyVPWW55 | PublicBodyVPWW56 | PublicBodyVPWW57 | PublicBodyVPWW58 | PublicBodyVPWW59 | PublicBodyVPWW60 | PublicBodyVPWW61 | PublicBodyVPWS50;
|
|
451
|
+
|
|
452
|
+
|
|
453
|
+
export interface PublicWarning extends TelegramJSONMain {
|
|
454
|
+
_schema: Schema;
|
|
455
|
+
type: '気象警報・注意報(R06)(大雨)' | '気象警報・注意報(R06)(土砂)' | '気象警報・注意報(R06)(高潮)' | '気象警報・注意報(R06)(暴風)' | '気象警報・注意報(R06)(波浪)' | '気象警報・注意報(R06)(大雪)' | '気象警報・注意報(R06)(その他注意報)' | '気象警報・注意報(R06)(集約通報)';
|
|
456
|
+
title: string;
|
|
457
|
+
infoType: '発表' | '訂正';
|
|
458
|
+
targetDateTimeDubious?: never;
|
|
459
|
+
targetDuration?: never;
|
|
460
|
+
validDateTime?: never;
|
|
461
|
+
eventId: null;
|
|
462
|
+
serialNo: null;
|
|
463
|
+
infoKind: '気象警報・注意報';
|
|
464
|
+
body: PublicBodyWarning;
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
|
|
468
|
+
export type Main = PublicWarning;
|
|
469
|
+
}
|