@dmdata/telegram-json-types 1.1.14 → 1.1.15
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/README.md +6 -1
- package/dist/jschema/forecast-2week-temperature_1.0.0.json +1 -0
- package/dist/jschema/forecast-prefecture_1.0.0.json +1 -0
- package/dist/jschema/forecast-season_1.0.0.json +1 -0
- package/dist/jschema/forecast-warning-possibility_1.0.0.json +1 -0
- package/dist/jschema/forecast-weathermap_1.0.0.json +1 -0
- package/dist/jschema/weather-impact-society_1.0.1.json +1 -0
- package/dist/jschema/weather-information_1.0.0.json +1 -1
- package/package.json +2 -4
- package/test/sample-schema-check.test.ts +23 -13
- package/types/index.d.ts +18 -2
- package/types/schema/forecast-2week-temperature/1.0.0.d.ts +110 -0
- package/types/schema/forecast-2week-temperature/index.d.ts +7 -0
- package/types/schema/forecast-prefecture/1.0.0.d.ts +526 -0
- package/types/schema/forecast-prefecture/index.d.ts +7 -0
- package/types/schema/forecast-season/1.0.0.d.ts +169 -0
- package/types/schema/forecast-season/index.d.ts +7 -0
- package/types/schema/forecast-warning-possibility/1.0.0.d.ts +382 -0
- package/types/schema/forecast-warning-possibility/index.d.ts +7 -0
- package/types/schema/forecast-weathermap/1.0.0.d.ts +194 -0
- package/types/schema/forecast-weathermap/index.d.ts +7 -0
- package/types/schema/weather-impact-society/1.0.1.d.ts +117 -0
- package/types/schema/weather-impact-society/index.d.ts +3 -1
- package/types/schema/weather-information/1.0.0.d.ts +39 -2
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { TelegramJSONMain } from '../../main';
|
|
2
|
+
import { Components } from '../../component';
|
|
3
|
+
|
|
4
|
+
export namespace ForecastSeason {
|
|
5
|
+
export interface Schema {
|
|
6
|
+
type: 'forecast-season';
|
|
7
|
+
version: '1.0.0';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface TimeSeriesTimeDefine {
|
|
11
|
+
timeId: string;
|
|
12
|
+
dateTime: string;
|
|
13
|
+
duration: string;
|
|
14
|
+
name: string;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export interface SeasonSummarySignificant {
|
|
18
|
+
type: '気温' | '降水量' | '日照時間' | '降雪量';
|
|
19
|
+
value: string;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface SeasonSummary {
|
|
23
|
+
text?: string;
|
|
24
|
+
significances: SeasonSummarySignificant[];
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export interface SeasonProbability<Type = '気温' | '降水量' | '日照時間' | '降雪量'> {
|
|
28
|
+
type: Type;
|
|
29
|
+
belowNormal: {
|
|
30
|
+
type: `平年より${Type extends '気温' ? '低い' : '少ない'}確率`;
|
|
31
|
+
unit: '%';
|
|
32
|
+
value: string;
|
|
33
|
+
significant?: true;
|
|
34
|
+
};
|
|
35
|
+
norma: {
|
|
36
|
+
type: '平年並みの確率';
|
|
37
|
+
unit: '%';
|
|
38
|
+
value: string;
|
|
39
|
+
significant?: true;
|
|
40
|
+
};
|
|
41
|
+
aboveNormal: {
|
|
42
|
+
type: `平年より${Type extends '気温' ? '高い' : '多い'}確率`;
|
|
43
|
+
unit: '%';
|
|
44
|
+
value: string;
|
|
45
|
+
significant?: true;
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface Target extends Components.CodeName {
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export interface SeasonZone extends Components.CodeName {
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface SeasonItemSummaryKind {
|
|
56
|
+
type: '出現の可能性が最も大きい天候と、特徴のある気温、降水量等の確率';
|
|
57
|
+
summaries: [SeasonSummary] | [];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export interface SeasonItemSummary {
|
|
61
|
+
kinds: [
|
|
62
|
+
SeasonItemSummaryKind
|
|
63
|
+
];
|
|
64
|
+
zones: [SeasonZone];
|
|
65
|
+
condition?: never;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export interface SeasonItemSummaryNoElement {
|
|
69
|
+
condition: '要素なし';
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export interface SeasonItemProbabilityKind {
|
|
73
|
+
type: '地域・期間平均平年偏差各階級の確率';
|
|
74
|
+
probabilities: [SeasonProbability];
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export interface SeasonItemProbability {
|
|
78
|
+
kinds: [
|
|
79
|
+
SeasonItemProbabilityKind
|
|
80
|
+
];
|
|
81
|
+
zones: [SeasonZone];
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
export interface SeasonPeriod {
|
|
85
|
+
dateTime: {
|
|
86
|
+
value: string;
|
|
87
|
+
validFormat: 'yyyy-mm-dd';
|
|
88
|
+
};
|
|
89
|
+
duration: 'P1M' | 'P2M' | 'P3M';
|
|
90
|
+
name: '向こう1か月' | '向こう3か月' | '冬(12月から2月)' | '夏(6月から8月)' |
|
|
91
|
+
'梅雨の時期(6月から7月、沖縄・奄美では5月から6月)' | '梅雨の時期(5月から6月)' |
|
|
92
|
+
'梅雨の時期(九州南部では6月から7月、奄美地方では5月から6月)' | '梅雨の時期(6月から7月)';
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
export interface Season {
|
|
96
|
+
type: '季節予報';
|
|
97
|
+
period: SeasonPeriod;
|
|
98
|
+
items: [SeasonItemSummary | SeasonItemSummaryNoElement, ...SeasonItemProbability[]];
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
export interface TimeSeriesZoneItemSummary extends SeasonSummary {
|
|
102
|
+
refId: string;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export interface TimeSeriesZoneItemSummaryKind {
|
|
106
|
+
type: '出現の可能性が最も大きい天候と、特徴のある気温、降水量等の確率';
|
|
107
|
+
summaries: TimeSeriesZoneItemSummary[];
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export interface TimeSeriesZoneItemProbability extends SeasonProbability {
|
|
111
|
+
refId: string;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
export interface TimeSeriesZoneItemProbabilityKind {
|
|
115
|
+
type: '地域・期間平均平年偏差各階級の確率';
|
|
116
|
+
probabilities: TimeSeriesZoneItemProbability[];
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export interface TimeSeriesZoneItemKindSummary {
|
|
120
|
+
kinds: [TimeSeriesZoneItemSummaryKind];
|
|
121
|
+
zones: [SeasonZone];
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
export interface TimeSeriesZoneItemKindProbability {
|
|
125
|
+
kinds: [TimeSeriesZoneItemProbabilityKind];
|
|
126
|
+
zones: [SeasonZone];
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
export interface TimeSeriesZone {
|
|
130
|
+
timeDefines: TimeSeriesTimeDefine[];
|
|
131
|
+
items: [TimeSeriesZoneItemKindSummary, ...TimeSeriesZoneItemKindProbability[]];
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export interface NextForecastSchedule {
|
|
135
|
+
type: '1か月予報' | '3か月予報' | '暖候期予報' | '寒候期予報';
|
|
136
|
+
text: string;
|
|
137
|
+
dateTime: string;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export interface ForecastAddition {
|
|
141
|
+
nextForecastSchedules: NextForecastSchedule[];
|
|
142
|
+
scheduleNotice: string | null;
|
|
143
|
+
additionalNotice: string | null;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
export interface PublicBody {
|
|
147
|
+
notice?: string;
|
|
148
|
+
target: Target;
|
|
149
|
+
seasons: Season[];
|
|
150
|
+
timeSeries?: TimeSeriesZone[];
|
|
151
|
+
forecastAddition: ForecastAddition;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export interface Public extends TelegramJSONMain {
|
|
155
|
+
_schema: Schema;
|
|
156
|
+
type: '全般1か月予報' | '地方1か月予報' | '全般3か月予報' | '地方3か月予報' | '全般暖・寒候期予報' | '地方暖・寒候期予報';
|
|
157
|
+
title: string;
|
|
158
|
+
infoType: '発表' | '訂正' | '遅延';
|
|
159
|
+
targetDateTimeDubious: never;
|
|
160
|
+
targetDuration: string;
|
|
161
|
+
validDateTime: never;
|
|
162
|
+
eventId: null;
|
|
163
|
+
serialNo: null;
|
|
164
|
+
infoKind: '季節予報';
|
|
165
|
+
body: PublicBody;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
export type Main = Public;
|
|
169
|
+
}
|
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
import { TelegramJSONMain } from '../../main';
|
|
2
|
+
import { Components } from '../../component';
|
|
3
|
+
|
|
4
|
+
export namespace ForecastWarningPossibility {
|
|
5
|
+
export interface Schema {
|
|
6
|
+
type: 'forecast-warning-possibility';
|
|
7
|
+
version: '1.0.0';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface WindSpeed {
|
|
11
|
+
type: '最大風速';
|
|
12
|
+
unit: 'm/s';
|
|
13
|
+
value: string;
|
|
14
|
+
condition?: '以下' | '以上';
|
|
15
|
+
range?: never;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface WindSpeedRange {
|
|
19
|
+
type: '最大風速';
|
|
20
|
+
range: {
|
|
21
|
+
type: '範囲';
|
|
22
|
+
unit: 'm/s';
|
|
23
|
+
from: string;
|
|
24
|
+
to: string;
|
|
25
|
+
};
|
|
26
|
+
value?: never;
|
|
27
|
+
condition?: never;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface WaveHeight {
|
|
31
|
+
type: '波高';
|
|
32
|
+
unit: 'm';
|
|
33
|
+
value: string;
|
|
34
|
+
condition?: '以下' | '以上';
|
|
35
|
+
range?: never;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
export interface WaveHeightNoValue {
|
|
39
|
+
type: '波高';
|
|
40
|
+
unit: 'm';
|
|
41
|
+
value: null;
|
|
42
|
+
condition: '流氷に覆われている' | string;
|
|
43
|
+
range?: never;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export interface WaveHeightRange {
|
|
47
|
+
type: '波高';
|
|
48
|
+
range: {
|
|
49
|
+
type: '範囲';
|
|
50
|
+
unit: 'm';
|
|
51
|
+
from: string;
|
|
52
|
+
to: string;
|
|
53
|
+
};
|
|
54
|
+
value?: never;
|
|
55
|
+
condition?: never;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export interface Precipitation<Type extends '1時間最大雨量' | '3時間最大雨量' | '24時間最大雨量'> {
|
|
59
|
+
type: Type;
|
|
60
|
+
unit: 'mm';
|
|
61
|
+
value: string;
|
|
62
|
+
condition?: '以下' | '以上';
|
|
63
|
+
range?: never;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export interface PrecipitationRange<Type extends '1時間最大雨量' | '3時間最大雨量' | '24時間最大雨量'> {
|
|
67
|
+
type: Type;
|
|
68
|
+
range: {
|
|
69
|
+
type: '範囲';
|
|
70
|
+
unit: 'mm';
|
|
71
|
+
from: string;
|
|
72
|
+
to: string;
|
|
73
|
+
};
|
|
74
|
+
value?: never;
|
|
75
|
+
condition?: never;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export interface SnowfallDepth<Type extends '6時間最大降雪量' | '24時間最大降雪量'> {
|
|
79
|
+
type: Type;
|
|
80
|
+
unit: 'cm';
|
|
81
|
+
value: string;
|
|
82
|
+
condition?: '以上';
|
|
83
|
+
range?: never;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export interface SnowfallDepthRange<Type extends '6時間最大降雪量' | '24時間最大降雪量'> {
|
|
87
|
+
type: Type;
|
|
88
|
+
range: {
|
|
89
|
+
type: '範囲';
|
|
90
|
+
unit: 'cm';
|
|
91
|
+
from: string;
|
|
92
|
+
to: string;
|
|
93
|
+
};
|
|
94
|
+
value?: never;
|
|
95
|
+
condition?: never;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
export interface TimeSeriesTimeDefine {
|
|
99
|
+
timeId: string;
|
|
100
|
+
dateTime: string;
|
|
101
|
+
duration: string;
|
|
102
|
+
name: string;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
export interface TimeSeriesItemPrecipitationNoRangeDetail<Type extends '1時間最大雨量' | '3時間最大雨量'> {
|
|
106
|
+
refId: string;
|
|
107
|
+
text: string;
|
|
108
|
+
base: {
|
|
109
|
+
locals: [
|
|
110
|
+
{
|
|
111
|
+
name: null;
|
|
112
|
+
precipitation: Precipitation<Type>;
|
|
113
|
+
}
|
|
114
|
+
] |
|
|
115
|
+
{
|
|
116
|
+
name: string;
|
|
117
|
+
precipitation: Precipitation<Type>;
|
|
118
|
+
}[]
|
|
119
|
+
};
|
|
120
|
+
subArea?: {
|
|
121
|
+
name: string;
|
|
122
|
+
base: {
|
|
123
|
+
precipitation: Precipitation<Type>;
|
|
124
|
+
};
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
export interface TimeSeriesItemKindPrecipitationNoRange<Type extends '1時間最大雨量' | '3時間最大雨量'> {
|
|
129
|
+
type: Type;
|
|
130
|
+
details: TimeSeriesItemPrecipitationNoRangeDetail<Type>[];
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
export interface TimeSeriesItemSnowfallDepthNoRangeDetail {
|
|
134
|
+
refId: string;
|
|
135
|
+
text: string;
|
|
136
|
+
base: {
|
|
137
|
+
locals: [
|
|
138
|
+
{
|
|
139
|
+
name: null;
|
|
140
|
+
depth: SnowfallDepth<'6時間最大降雪量'>;
|
|
141
|
+
}
|
|
142
|
+
] |
|
|
143
|
+
{
|
|
144
|
+
name: string;
|
|
145
|
+
depth: SnowfallDepth<'6時間最大降雪量'>;
|
|
146
|
+
}[]
|
|
147
|
+
};
|
|
148
|
+
subArea?: {
|
|
149
|
+
name: string;
|
|
150
|
+
base: {
|
|
151
|
+
depth: SnowfallDepth<'6時間最大降雪量'>;
|
|
152
|
+
};
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export interface TimeSeriesItemKindSnowfallDepthNoRange {
|
|
157
|
+
type: '6時間最大降雪量';
|
|
158
|
+
details: TimeSeriesItemSnowfallDepthNoRangeDetail[];
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export interface TimeSeriesItemWindSpeedDetail {
|
|
162
|
+
refId: string;
|
|
163
|
+
text: string;
|
|
164
|
+
base: {
|
|
165
|
+
locals: [
|
|
166
|
+
{
|
|
167
|
+
name: null;
|
|
168
|
+
speed: WindSpeed | WindSpeedRange;
|
|
169
|
+
}
|
|
170
|
+
] |
|
|
171
|
+
{
|
|
172
|
+
name: string;
|
|
173
|
+
speed: WindSpeed | WindSpeedRange;
|
|
174
|
+
}[]
|
|
175
|
+
};
|
|
176
|
+
subArea?: {
|
|
177
|
+
name: string;
|
|
178
|
+
base: {
|
|
179
|
+
speed: WindSpeed | WindSpeedRange;
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
export interface TimeSeriesItemKindWindSpeed {
|
|
185
|
+
type: '最大風速';
|
|
186
|
+
details: TimeSeriesItemWindSpeedDetail[];
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export interface TimeSeriesItemWaveHeightDetail {
|
|
190
|
+
refId: string;
|
|
191
|
+
text: string;
|
|
192
|
+
base: {
|
|
193
|
+
locals: [
|
|
194
|
+
{
|
|
195
|
+
name: null;
|
|
196
|
+
height: WaveHeight | WaveHeightRange | WaveHeightNoValue;
|
|
197
|
+
}
|
|
198
|
+
] |
|
|
199
|
+
{
|
|
200
|
+
name: string;
|
|
201
|
+
height: WaveHeight | WaveHeightRange | WaveHeightNoValue;
|
|
202
|
+
}[]
|
|
203
|
+
};
|
|
204
|
+
subArea?: {
|
|
205
|
+
name: string;
|
|
206
|
+
base: {
|
|
207
|
+
height: WaveHeight | WaveHeightRange | WaveHeightNoValue;
|
|
208
|
+
};
|
|
209
|
+
};
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export interface TimeSeriesItemKindWaveHeight {
|
|
213
|
+
type: '波';
|
|
214
|
+
details: TimeSeriesItemWaveHeightDetail[];
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
|
|
218
|
+
export interface TimeSeries6HoursItem extends Components.CodeName {
|
|
219
|
+
kinds: [
|
|
220
|
+
TimeSeriesItemKindPrecipitationNoRange<'1時間最大雨量'>,
|
|
221
|
+
TimeSeriesItemKindPrecipitationNoRange<'3時間最大雨量'>,
|
|
222
|
+
TimeSeriesItemKindSnowfallDepthNoRange,
|
|
223
|
+
TimeSeriesItemKindWindSpeed,
|
|
224
|
+
TimeSeriesItemKindWaveHeight
|
|
225
|
+
] | [
|
|
226
|
+
TimeSeriesItemKindPrecipitationNoRange<'1時間最大雨量'>,
|
|
227
|
+
TimeSeriesItemKindPrecipitationNoRange<'3時間最大雨量'>,
|
|
228
|
+
TimeSeriesItemKindSnowfallDepthNoRange,
|
|
229
|
+
TimeSeriesItemKindWindSpeed,
|
|
230
|
+
];
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
export interface TimeSeries6Hours {
|
|
234
|
+
timeDefines: TimeSeriesTimeDefine[];
|
|
235
|
+
items: TimeSeries6HoursItem[];
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
export interface TimeSeriesItemPrecipitationDetail {
|
|
239
|
+
refId: string;
|
|
240
|
+
text: string;
|
|
241
|
+
base: {
|
|
242
|
+
locals: [
|
|
243
|
+
{
|
|
244
|
+
name: null;
|
|
245
|
+
precipitation: Precipitation<'24時間最大雨量'> | PrecipitationRange<'24時間最大雨量'>;
|
|
246
|
+
}
|
|
247
|
+
] |
|
|
248
|
+
{
|
|
249
|
+
name: string;
|
|
250
|
+
precipitation: Precipitation<'24時間最大雨量'> | PrecipitationRange<'24時間最大雨量'>;
|
|
251
|
+
}[]
|
|
252
|
+
};
|
|
253
|
+
subArea?: {
|
|
254
|
+
name: string;
|
|
255
|
+
base: {
|
|
256
|
+
precipitation: Precipitation<'24時間最大雨量'> | PrecipitationRange<'24時間最大雨量'>;
|
|
257
|
+
};
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
export interface TimeSeriesItemKindPrecipitation {
|
|
262
|
+
type: '24時間最大雨量';
|
|
263
|
+
details: TimeSeriesItemPrecipitationDetail[];
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
export interface TimeSeriesItemSnowfallDepthDetail {
|
|
267
|
+
refId: string;
|
|
268
|
+
text: string;
|
|
269
|
+
base: {
|
|
270
|
+
locals: [
|
|
271
|
+
{
|
|
272
|
+
name: null;
|
|
273
|
+
depth: SnowfallDepth<'24時間最大降雪量'> | SnowfallDepthRange<'24時間最大降雪量'>;
|
|
274
|
+
}
|
|
275
|
+
] |
|
|
276
|
+
{
|
|
277
|
+
name: string;
|
|
278
|
+
depth: SnowfallDepth<'24時間最大降雪量'> | SnowfallDepthRange<'24時間最大降雪量'>;
|
|
279
|
+
}[]
|
|
280
|
+
};
|
|
281
|
+
subArea?: {
|
|
282
|
+
name: string;
|
|
283
|
+
base: {
|
|
284
|
+
depth: SnowfallDepth<'24時間最大降雪量'> | SnowfallDepthRange<'24時間最大降雪量'>;
|
|
285
|
+
};
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
export interface TimeSeriesItemKindSnowfallDepth {
|
|
290
|
+
type: '24時間最大降雪量';
|
|
291
|
+
details: TimeSeriesItemSnowfallDepthDetail[];
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
export interface TimeSeries24HoursItem extends Components.CodeName {
|
|
295
|
+
kinds: [
|
|
296
|
+
TimeSeriesItemKindPrecipitation,
|
|
297
|
+
TimeSeriesItemKindSnowfallDepth
|
|
298
|
+
];
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
export interface TimeSeries24Hours {
|
|
302
|
+
timeDefines: [TimeSeriesTimeDefine];
|
|
303
|
+
items: TimeSeries24HoursItem[];
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
export interface TimeSeriesPossibilityRanksItemRank<Type extends '雨' | '雪' | '風(風雪)' | '波' | '潮位'> {
|
|
307
|
+
refId: string;
|
|
308
|
+
type: `${Type}の警報級の可能性`;
|
|
309
|
+
value: '高' | '中' | 'なし' | null;
|
|
310
|
+
condition?: '値なし';
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
export interface TimeSeriesPossibilityRanksItemKind<Type extends '雨' | '雪' | '風(風雪)' | '波' | '潮位'> {
|
|
314
|
+
type: `${Type}の警報級の可能性`;
|
|
315
|
+
text?: string;
|
|
316
|
+
possibilityRanks: TimeSeriesPossibilityRanksItemRank<Type>[];
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
export interface TimeSeriesPossibilityRanksItem extends Components.CodeName {
|
|
320
|
+
kinds: [
|
|
321
|
+
TimeSeriesPossibilityRanksItemKind<'雨'>,
|
|
322
|
+
TimeSeriesPossibilityRanksItemKind<'雪'>,
|
|
323
|
+
TimeSeriesPossibilityRanksItemKind<'風(風雪)'>,
|
|
324
|
+
TimeSeriesPossibilityRanksItemKind<'波'>,
|
|
325
|
+
TimeSeriesPossibilityRanksItemKind<'潮位'>
|
|
326
|
+
] | [
|
|
327
|
+
TimeSeriesPossibilityRanksItemKind<'雨'>,
|
|
328
|
+
TimeSeriesPossibilityRanksItemKind<'雪'>,
|
|
329
|
+
TimeSeriesPossibilityRanksItemKind<'風(風雪)'>
|
|
330
|
+
];
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
|
|
334
|
+
export interface TimeSeriesPossibilityRanks<TimeDefineName extends boolean = true> {
|
|
335
|
+
timeDefines: TimeDefineName extends true ? TimeSeriesTimeDefine[] : Omit<TimeSeriesTimeDefine, 'name'>[];
|
|
336
|
+
items: TimeSeriesPossibilityRanksItem[];
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
export interface PublicBodyVPFD60 {
|
|
340
|
+
timeSeries: [
|
|
341
|
+
TimeSeries6Hours,
|
|
342
|
+
TimeSeries24Hours,
|
|
343
|
+
TimeSeriesPossibilityRanks
|
|
344
|
+
];
|
|
345
|
+
}
|
|
346
|
+
|
|
347
|
+
export interface PublicBodyVPFW60 {
|
|
348
|
+
timeSeries: [
|
|
349
|
+
TimeSeriesPossibilityRanks<false>
|
|
350
|
+
];
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
export interface PublicVPFD60 extends TelegramJSONMain {
|
|
354
|
+
_schema: Schema;
|
|
355
|
+
type: '警報級の可能性(明日まで)';
|
|
356
|
+
title: string;
|
|
357
|
+
infoType: '発表' | '訂正' | '遅延';
|
|
358
|
+
targetDateTimeDubious: never;
|
|
359
|
+
targetDuration: string;
|
|
360
|
+
validDateTime: never;
|
|
361
|
+
eventId: null;
|
|
362
|
+
serialNo: null;
|
|
363
|
+
infoKind: '警報級の可能性(明日まで)';
|
|
364
|
+
body: PublicBodyVPFD60;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
export interface PublicVPFW60 extends TelegramJSONMain {
|
|
368
|
+
_schema: Schema;
|
|
369
|
+
type: '警報級の可能性(明後日以降)';
|
|
370
|
+
title: string;
|
|
371
|
+
infoType: '発表' | '訂正' | '遅延';
|
|
372
|
+
targetDateTimeDubious: never;
|
|
373
|
+
targetDuration: string;
|
|
374
|
+
validDateTime: never;
|
|
375
|
+
eventId: null;
|
|
376
|
+
serialNo: null;
|
|
377
|
+
infoKind: '警報級の可能性(明後日以降)';
|
|
378
|
+
body: PublicBodyVPFW60;
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
export type Main = PublicVPFD60 | PublicVPFW60;
|
|
382
|
+
}
|