@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,194 @@
|
|
|
1
|
+
import { TelegramJSONMain } from '../../main';
|
|
2
|
+
import { Components } from '../../component';
|
|
3
|
+
|
|
4
|
+
export namespace ForecastWeathermap {
|
|
5
|
+
export interface Schema {
|
|
6
|
+
type: 'forecast-weathermap';
|
|
7
|
+
version: '1.0.0';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface Direction {
|
|
11
|
+
type: '移動方向';
|
|
12
|
+
unit: '°';
|
|
13
|
+
value: string | null;
|
|
14
|
+
condition?: '不定';
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export interface WindDirection {
|
|
18
|
+
type: '風向';
|
|
19
|
+
unit: '°';
|
|
20
|
+
value: string;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface SpeedMeter {
|
|
24
|
+
type: '移動速度';
|
|
25
|
+
unit: 'km/h';
|
|
26
|
+
value: string | null;
|
|
27
|
+
condition?: 'ゆっくり' | 'ほとんど停滞' | string;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface SpeedKnot {
|
|
31
|
+
type: '移動速度';
|
|
32
|
+
unit: 'knot';
|
|
33
|
+
value: string | null;
|
|
34
|
+
condition?: 'SLW' | 'ALMOST STNR' | string;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export interface WindSpeedMeter {
|
|
38
|
+
type: '最大風速';
|
|
39
|
+
unit: 'm/s';
|
|
40
|
+
value: string;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export interface WindSpeedKnot {
|
|
44
|
+
type: '最大風速';
|
|
45
|
+
unit: 'knot';
|
|
46
|
+
value: string;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface Pressure<Type extends string = ''> {
|
|
50
|
+
type: `${Type}気圧`;
|
|
51
|
+
unit: 'hPa';
|
|
52
|
+
value: string;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface WeatherMapItemDisturbanceKindCenter {
|
|
56
|
+
type: '低気圧' | '高気圧' | '熱帯低気圧' | '低圧部';
|
|
57
|
+
coordinate: Components.Coordinate;
|
|
58
|
+
direction: Direction;
|
|
59
|
+
speeds: [SpeedMeter, SpeedKnot];
|
|
60
|
+
pressure: Pressure<'中心'>;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export interface WeatherMapItemDisturbance {
|
|
64
|
+
type: '低気圧' | '高気圧' | '熱帯低気圧' | '低圧部';
|
|
65
|
+
kinds: [
|
|
66
|
+
WeatherMapItemDisturbanceKindCenter
|
|
67
|
+
];
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export interface WeatherMapItemTyphoonKindCenter extends Omit<WeatherMapItemDisturbanceKindCenter, 'type'> {
|
|
71
|
+
type: '台風';
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export interface WeatherMapItemTyphoonKindWindSpeed {
|
|
75
|
+
type: '風';
|
|
76
|
+
speeds: [WindSpeedMeter, WindSpeedKnot];
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export interface WeatherMapItemTyphoonKindName {
|
|
80
|
+
type: '呼称';
|
|
81
|
+
text: string | null;
|
|
82
|
+
kana: string | null;
|
|
83
|
+
number: string | null;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export interface WeatherMapItemTyphoonKindClass {
|
|
87
|
+
type: '階級';
|
|
88
|
+
category: 'TS' | 'STS' | 'TY' | 'HR' | 'Tropical Storm' | null;
|
|
89
|
+
name: '台風' | 'ハリケーン' | '発達した熱帯低気圧' | null;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export interface WeatherMapItemTyphoon {
|
|
93
|
+
type: '台風';
|
|
94
|
+
kinds: [
|
|
95
|
+
WeatherMapItemTyphoonKindCenter,
|
|
96
|
+
WeatherMapItemTyphoonKindWindSpeed,
|
|
97
|
+
WeatherMapItemTyphoonKindName,
|
|
98
|
+
WeatherMapItemTyphoonKindClass
|
|
99
|
+
];
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
export interface WeatherMapItemIsobarKind {
|
|
103
|
+
type: '等圧線';
|
|
104
|
+
pressure: Pressure;
|
|
105
|
+
line: [number, number][];
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
export interface WeatherMapItemIsobar {
|
|
109
|
+
type: '等圧線';
|
|
110
|
+
kinds: [
|
|
111
|
+
WeatherMapItemIsobarKind
|
|
112
|
+
];
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
export interface WeatherMapItemFrontKind {
|
|
116
|
+
type: '寒冷前線' | '温暖前線' | '停滞前線' | '閉塞前線';
|
|
117
|
+
line: [number, number][];
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
export interface WeatherMapItemFront {
|
|
121
|
+
type: '寒冷前線' | '温暖前線' | '停滞前線' | '閉塞前線';
|
|
122
|
+
kinds: [
|
|
123
|
+
WeatherMapItemFrontKind
|
|
124
|
+
];
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export interface WeatherMap {
|
|
128
|
+
type: '実況' | '予想';
|
|
129
|
+
elapsedTime: 'PT0H' | 'PT24H' | 'PT48H';
|
|
130
|
+
dateTime: string;
|
|
131
|
+
items: (WeatherMapItemDisturbance | WeatherMapItemTyphoon | WeatherMapItemIsobar | WeatherMapItemFront)[];
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
export interface SevereWeatherWindKind {
|
|
135
|
+
type: '悪天情報(強風)';
|
|
136
|
+
direction: WindDirection;
|
|
137
|
+
speed: WindSpeedKnot;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
export interface SevereWeatherWind {
|
|
141
|
+
type: '悪天情報(強風)';
|
|
142
|
+
name: '強風域';
|
|
143
|
+
coordinates: [[number, number]];
|
|
144
|
+
kinds: [
|
|
145
|
+
SevereWeatherWindKind
|
|
146
|
+
];
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
export interface SevereWeatherFogPolygon {
|
|
150
|
+
type: '悪天情報(霧)';
|
|
151
|
+
name: '霧域';
|
|
152
|
+
code?: never;
|
|
153
|
+
polygons: [[number, number][]];
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
export interface SevereWeatherFogArea extends Components.CodeName {
|
|
157
|
+
type: '悪天情報(霧)';
|
|
158
|
+
polygons?: never;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export interface SevereWeatherIcePolygon {
|
|
162
|
+
type: '悪天情報(海氷)' | '悪天情報(船体着氷)';
|
|
163
|
+
name: '海氷域' | '船体着氷域';
|
|
164
|
+
coordinates: [number, number][];
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export interface SevereWeather {
|
|
168
|
+
type: '実況' | '予想';
|
|
169
|
+
elapsedTime: 'PT0H' | 'PT24H' | 'PT48H';
|
|
170
|
+
dateTime: string;
|
|
171
|
+
items: (SevereWeatherWind | SevereWeatherFogPolygon | SevereWeatherFogArea | SevereWeatherIcePolygon)[];
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
export interface PublicBody {
|
|
175
|
+
weathermap: WeatherMap;
|
|
176
|
+
severeWeather?: SevereWeather;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
export interface Public extends TelegramJSONMain {
|
|
180
|
+
_schema: Schema;
|
|
181
|
+
type: '地上実況図' | '地上24時間予想図' | '地上48時間予想図' | 'アジア太平洋地上実況図' | 'アジア太平洋海上悪天24時間予想図' | 'アジア太平洋海上悪天48時間予想図';
|
|
182
|
+
title: '地上実況図' | '地上24時間予想図' | '地上48時間予想図' | 'アジア太平洋地上実況図' | 'アジア太平洋海上悪天24時間予想図' | 'アジア太平洋海上悪天48時間予想図';
|
|
183
|
+
infoType: '発表' | '訂正' | '遅延';
|
|
184
|
+
targetDateTimeDubious: never;
|
|
185
|
+
targetDuration: never;
|
|
186
|
+
validDateTime: never;
|
|
187
|
+
eventId: null;
|
|
188
|
+
serialNo: null;
|
|
189
|
+
infoKind: '天気図情報';
|
|
190
|
+
body: PublicBody;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
export type Main = Public;
|
|
194
|
+
}
|
|
@@ -0,0 +1,117 @@
|
|
|
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.1';
|
|
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 MainText {
|
|
27
|
+
text: string;
|
|
28
|
+
zones: MainTextZone[];
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export interface StatisticPeriodDateTime {
|
|
32
|
+
value: string;
|
|
33
|
+
validFormat?: string;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export interface StatisticPeriod {
|
|
37
|
+
dateTime: StatisticPeriodDateTime;
|
|
38
|
+
duration: string;
|
|
39
|
+
name: string;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface StatisticStationObservedValue {
|
|
43
|
+
type: string;
|
|
44
|
+
unit: string;
|
|
45
|
+
value: string | null;
|
|
46
|
+
condition?: string;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export interface StatisticStation extends Components.CodeName {
|
|
50
|
+
type: '天候の状況(速報値)';
|
|
51
|
+
observedValues: StatisticStationObservedValue[];
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export interface Statistic {
|
|
55
|
+
type: '気象官署及び特別地域気象観測所' | 'アメダス';
|
|
56
|
+
period: StatisticPeriod;
|
|
57
|
+
text?: string;
|
|
58
|
+
stations: StatisticStation[];
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export interface SeasonZoneEventDataDate {
|
|
62
|
+
value: string;
|
|
63
|
+
dubious: '頃';
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export interface SeasonZoneEventData {
|
|
67
|
+
date?: SeasonZoneEventDataDate;
|
|
68
|
+
normal: SeasonZoneEventDataDate;
|
|
69
|
+
lastYear?: SeasonZoneEventDataDate;
|
|
70
|
+
remark?: string;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export interface SeasonZone extends Components.CodeName {
|
|
74
|
+
type: '梅雨入り' | '梅雨明け';
|
|
75
|
+
eventData: SeasonZoneEventData;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export interface Season {
|
|
79
|
+
type: '梅雨';
|
|
80
|
+
zones: SeasonZone[];
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export interface PublicBody {
|
|
84
|
+
notice?: string;
|
|
85
|
+
target: Target;
|
|
86
|
+
targetTime: TargetTime;
|
|
87
|
+
mainTexts: MainText [];
|
|
88
|
+
statistics?: Statistic[];
|
|
89
|
+
comment?: string;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export interface PublicBodySeason extends PublicBody {
|
|
93
|
+
season: Season;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
export interface Public extends TelegramJSONMain {
|
|
97
|
+
_schema: Schema;
|
|
98
|
+
type: '全般天候情報' | '地方天候情報';
|
|
99
|
+
title: string;
|
|
100
|
+
infoType: '発表' | '訂正' | '取消';
|
|
101
|
+
targetDateTimeDubious?: never;
|
|
102
|
+
targetDuration?: never;
|
|
103
|
+
validDateTime?: string;
|
|
104
|
+
eventId: string;
|
|
105
|
+
serialNo: string;
|
|
106
|
+
infoKind: '天候情報';
|
|
107
|
+
body: PublicBody;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export interface PublicZoneSeason extends Public {
|
|
111
|
+
type: '地方天候情報';
|
|
112
|
+
validDateTime?: never;
|
|
113
|
+
body: PublicBodySeason;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export type Main = Public | PublicZoneSeason;
|
|
117
|
+
}
|
|
@@ -12,7 +12,16 @@ export namespace WeatherInformation {
|
|
|
12
12
|
comment: string;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
export interface
|
|
15
|
+
export interface PublicBodyVPFG50 {
|
|
16
|
+
target: {
|
|
17
|
+
name: string;
|
|
18
|
+
code: string
|
|
19
|
+
};
|
|
20
|
+
notice: string | null;
|
|
21
|
+
comment: string;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface Public extends TelegramJSONMain {
|
|
16
25
|
_schema: Schema;
|
|
17
26
|
type: '全般台風情報' | '全般台風情報(定型)' | '全般台風情報(詳細)' | '全般スモッグ気象情報' | 'スモッグ気象情報' | '地方高温注意情報' | '府県高温注意情報' | '熱中症警戒アラート' | '全般潮位情報' | '地方潮位情報' | '府県潮位情報' | '全般気象情報' | '地方気象情報' | '府県気象情報';
|
|
18
27
|
title: string;
|
|
@@ -26,5 +35,33 @@ export namespace WeatherInformation {
|
|
|
26
35
|
body: PublicBody;
|
|
27
36
|
}
|
|
28
37
|
|
|
29
|
-
export
|
|
38
|
+
export interface PublicVPZK70 extends TelegramJSONMain {
|
|
39
|
+
_schema: Schema;
|
|
40
|
+
type: '全般季節予報(2週間気温予報)';
|
|
41
|
+
title: string;
|
|
42
|
+
infoType: '発表' | '訂正' | '取消';
|
|
43
|
+
targetDateTimeDubious?: never;
|
|
44
|
+
targetDuration?: never;
|
|
45
|
+
validDateTime?: never;
|
|
46
|
+
eventId: null;
|
|
47
|
+
serialNo: null;
|
|
48
|
+
infoKind: '平文情報';
|
|
49
|
+
body: PublicBody;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export interface PublicVPFG50 extends TelegramJSONMain {
|
|
53
|
+
_schema: Schema;
|
|
54
|
+
type: '府県天気概況';
|
|
55
|
+
title: string;
|
|
56
|
+
infoType: '発表' | '訂正' | '取消';
|
|
57
|
+
targetDateTimeDubious?: never;
|
|
58
|
+
targetDuration?: never;
|
|
59
|
+
validDateTime?: never;
|
|
60
|
+
eventId: null;
|
|
61
|
+
serialNo: null;
|
|
62
|
+
infoKind: '平文情報';
|
|
63
|
+
body: PublicBodyVPFG50;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
export type Main = Public | PublicVPZK70 | PublicVPFG50;
|
|
30
67
|
}
|