@edgeiq/edgeiq-api-js 1.1.7 → 1.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/README.md +55 -55
  2. package/dist/__tests__/auth.test.d.ts +1 -1
  3. package/dist/__tests__/auth.test.js +143 -110
  4. package/dist/__tests__/companies.test.d.ts +1 -1
  5. package/dist/__tests__/companies.test.js +196 -196
  6. package/dist/__tests__/deviceTypes.test.d.ts +1 -1
  7. package/dist/__tests__/deviceTypes.test.js +172 -172
  8. package/dist/__tests__/devices.test.d.ts +1 -1
  9. package/dist/__tests__/devices.test.js +204 -204
  10. package/dist/__tests__/discoveredDevice.test.d.ts +1 -0
  11. package/dist/__tests__/discoveredDevice.test.js +126 -0
  12. package/dist/__tests__/ingestors.test.d.ts +1 -1
  13. package/dist/__tests__/ingestors.test.js +172 -172
  14. package/dist/__tests__/integrations.test.d.ts +1 -1
  15. package/dist/__tests__/integrations.test.js +192 -192
  16. package/dist/__tests__/pollableAttributes.test.d.ts +1 -1
  17. package/dist/__tests__/pollableAttributes.test.js +172 -172
  18. package/dist/__tests__/rules.test.d.ts +1 -1
  19. package/dist/__tests__/rules.test.js +172 -172
  20. package/dist/__tests__/translators.test.d.ts +1 -1
  21. package/dist/__tests__/translators.test.js +172 -172
  22. package/dist/__tests__/users.test.d.ts +1 -1
  23. package/dist/__tests__/users.test.js +208 -208
  24. package/dist/auth/index.d.ts +8 -8
  25. package/dist/auth/index.js +158 -147
  26. package/dist/bulkResponses/index.d.ts +8 -8
  27. package/dist/bulkResponses/index.js +124 -124
  28. package/dist/bulkResponses/models.d.ts +43 -43
  29. package/dist/bulkResponses/models.js +2 -2
  30. package/dist/commands/index.d.ts +9 -9
  31. package/dist/commands/index.js +224 -224
  32. package/dist/commands/models.d.ts +28 -28
  33. package/dist/commands/models.js +2 -2
  34. package/dist/companies/index.d.ts +7 -7
  35. package/dist/companies/index.js +198 -198
  36. package/dist/companies/models.d.ts +94 -94
  37. package/dist/companies/models.js +2 -2
  38. package/dist/constants.d.ts +128 -127
  39. package/dist/constants.js +144 -143
  40. package/dist/core/ModelClass.d.ts +13 -13
  41. package/dist/core/ModelClass.js +19 -19
  42. package/dist/core/handleResponseError.d.ts +2 -2
  43. package/dist/core/handleResponseError.js +167 -167
  44. package/dist/core/index.d.ts +19 -19
  45. package/dist/core/index.js +63 -63
  46. package/dist/deviceConfigs/index.d.ts +9 -9
  47. package/dist/deviceConfigs/index.js +224 -224
  48. package/dist/deviceConfigs/models.d.ts +38 -38
  49. package/dist/deviceConfigs/models.js +2 -2
  50. package/dist/deviceLocationObservations/index.d.ts +5 -5
  51. package/dist/deviceLocationObservations/index.js +189 -189
  52. package/dist/deviceLocationObservations/models.d.ts +26 -26
  53. package/dist/deviceLocationObservations/models.js +2 -2
  54. package/dist/deviceTemplates/index.d.ts +9 -9
  55. package/dist/deviceTemplates/index.js +226 -226
  56. package/dist/deviceTemplates/models.d.ts +36 -36
  57. package/dist/deviceTemplates/models.js +2 -2
  58. package/dist/deviceTransferRequests/index.d.ts +7 -7
  59. package/dist/deviceTransferRequests/index.js +198 -198
  60. package/dist/deviceTransferRequests/models.d.ts +26 -26
  61. package/dist/deviceTransferRequests/models.js +2 -2
  62. package/dist/deviceTypes/index.d.ts +19 -19
  63. package/dist/deviceTypes/index.js +440 -440
  64. package/dist/deviceTypes/models.d.ts +104 -104
  65. package/dist/deviceTypes/models.js +2 -2
  66. package/dist/devices/index.d.ts +20 -20
  67. package/dist/devices/index.js +487 -487
  68. package/dist/devices/models.d.ts +114 -114
  69. package/dist/devices/models.js +2 -2
  70. package/dist/discoveredDevices/index.d.ts +14 -0
  71. package/dist/discoveredDevices/index.js +334 -0
  72. package/dist/discoveredDevices/models.d.ts +41 -0
  73. package/dist/discoveredDevices/models.js +2 -0
  74. package/dist/downstreamSystems/index.d.ts +7 -7
  75. package/dist/downstreamSystems/index.js +198 -198
  76. package/dist/downstreamSystems/models.d.ts +17 -17
  77. package/dist/downstreamSystems/models.js +2 -2
  78. package/dist/escrowDevices/index.d.ts +9 -9
  79. package/dist/escrowDevices/index.js +224 -224
  80. package/dist/escrowDevices/models.d.ts +21 -21
  81. package/dist/escrowDevices/models.js +2 -2
  82. package/dist/filtersParser.d.ts +5 -5
  83. package/dist/filtersParser.js +52 -52
  84. package/dist/gatewayCommands/index.d.ts +10 -10
  85. package/dist/gatewayCommands/index.js +261 -261
  86. package/dist/gatewayCommands/models.d.ts +41 -41
  87. package/dist/gatewayCommands/models.js +2 -2
  88. package/dist/helpers.d.ts +3 -3
  89. package/dist/helpers.js +11 -11
  90. package/dist/index.d.ts +54 -54
  91. package/dist/index.js +95 -95
  92. package/dist/ingestors/index.d.ts +9 -9
  93. package/dist/ingestors/index.js +224 -224
  94. package/dist/ingestors/models.d.ts +37 -37
  95. package/dist/ingestors/models.js +2 -2
  96. package/dist/integrations/index.d.ts +9 -9
  97. package/dist/integrations/index.js +306 -306
  98. package/dist/integrations/models.d.ts +61 -61
  99. package/dist/integrations/models.js +2 -2
  100. package/dist/models/index.d.ts +1893 -1893
  101. package/dist/models/index.js +2 -2
  102. package/dist/models.d.ts +67 -67
  103. package/dist/models.js +2 -2
  104. package/dist/pollableAttributes/index.d.ts +7 -7
  105. package/dist/pollableAttributes/index.js +198 -198
  106. package/dist/pollableAttributes/models.d.ts +28 -28
  107. package/dist/pollableAttributes/models.js +2 -2
  108. package/dist/regions/index.d.ts +5 -5
  109. package/dist/regions/index.js +173 -173
  110. package/dist/regions/models.d.ts +17 -17
  111. package/dist/regions/models.js +2 -2
  112. package/dist/reports/index.d.ts +8 -8
  113. package/dist/reports/index.js +199 -199
  114. package/dist/reports/models.d.ts +25 -25
  115. package/dist/reports/models.js +2 -2
  116. package/dist/rules/index.d.ts +9 -9
  117. package/dist/rules/index.js +224 -224
  118. package/dist/rules/models.d.ts +108 -108
  119. package/dist/rules/models.js +2 -2
  120. package/dist/secrets/index.d.ts +5 -5
  121. package/dist/secrets/index.js +173 -173
  122. package/dist/secrets/models.d.ts +16 -16
  123. package/dist/secrets/models.js +2 -2
  124. package/dist/softwareUpdates/index.d.ts +9 -9
  125. package/dist/softwareUpdates/index.js +224 -224
  126. package/dist/softwareUpdates/models.d.ts +22 -22
  127. package/dist/softwareUpdates/models.js +2 -2
  128. package/dist/stats/index.d.ts +8 -8
  129. package/dist/stats/index.js +116 -116
  130. package/dist/stats/models.d.ts +27 -27
  131. package/dist/stats/models.js +2 -2
  132. package/dist/systemCommandJobs/index.d.ts +5 -5
  133. package/dist/systemCommandJobs/index.js +173 -173
  134. package/dist/systemCommandJobs/models.d.ts +32 -32
  135. package/dist/systemCommandJobs/models.js +2 -2
  136. package/dist/systemCommands/index.d.ts +7 -7
  137. package/dist/systemCommands/index.js +198 -198
  138. package/dist/systemCommands/models.d.ts +32 -32
  139. package/dist/systemCommands/models.js +2 -2
  140. package/dist/testConstants.d.ts +42 -42
  141. package/dist/testConstants.js +214 -214
  142. package/dist/translators/index.d.ts +9 -9
  143. package/dist/translators/index.js +224 -224
  144. package/dist/translators/models.d.ts +21 -21
  145. package/dist/translators/models.js +2 -2
  146. package/dist/userTypes/index.d.ts +7 -7
  147. package/dist/userTypes/index.js +198 -198
  148. package/dist/userTypes/models.d.ts +79 -79
  149. package/dist/userTypes/models.js +2 -2
  150. package/dist/users/index.d.ts +10 -10
  151. package/dist/users/index.js +252 -252
  152. package/dist/users/models.d.ts +41 -41
  153. package/dist/users/models.js +2 -2
  154. package/package.json +56 -56
  155. package/dist/__tests__/testConstants.d.ts +0 -7
  156. package/dist/__tests__/testConstants.js +0 -14
  157. package/dist/example/index.d.ts +0 -1
  158. package/dist/example/index.js +0 -5
package/README.md CHANGED
@@ -1,55 +1,55 @@
1
- ## Description
2
-
3
- An SDK Wrapper to use EdgeIQ API
4
- We will be using:
5
- - Typescript
6
- - Axios
7
- - Jest
8
- - Prettier
9
- <br/>
10
-
11
- ## Requirements
12
-
13
- - Node
14
- <br/>
15
-
16
- ## Initial Setup
17
-
18
- Just install the packages needed
19
- ```
20
- $ npm install
21
- ```
22
- <br/>
23
-
24
- ## Available Commands
25
-
26
- - Building:
27
- ```
28
- $ npm run build
29
- ```
30
- - Linting:
31
- ```
32
- $ npm run lint
33
- ```
34
- - Formatting:
35
- ```
36
- $ npm run format
37
- ```
38
- - Testing
39
- ```
40
- $ npm test
41
- ```
42
-
43
- ## Publishing:
44
-
45
- Run:
46
- ```
47
- $ npm publish
48
- ```
49
-
50
- ## How to use it
51
-
52
- Install the dependency via the command line.
53
- `npm install --save @edgeiq/edgeiq-api-js`
54
- # OR
55
- `yarn add @edgeiq/edgeiq-api-js`
1
+ ## Description
2
+
3
+ An SDK Wrapper to use EdgeIQ API
4
+ We will be using:
5
+ - Typescript
6
+ - Axios
7
+ - Jest
8
+ - Prettier
9
+ <br/>
10
+
11
+ ## Requirements
12
+
13
+ - Node
14
+ <br/>
15
+
16
+ ## Initial Setup
17
+
18
+ Just install the packages needed
19
+ ```
20
+ $ npm install
21
+ ```
22
+ <br/>
23
+
24
+ ## Available Commands
25
+
26
+ - Building:
27
+ ```
28
+ $ npm run build
29
+ ```
30
+ - Linting:
31
+ ```
32
+ $ npm run lint
33
+ ```
34
+ - Formatting:
35
+ ```
36
+ $ npm run format
37
+ ```
38
+ - Testing
39
+ ```
40
+ $ npm test
41
+ ```
42
+
43
+ ## Publishing:
44
+
45
+ Run:
46
+ ```
47
+ $ npm publish
48
+ ```
49
+
50
+ ## How to use it
51
+
52
+ Install the dependency via the command line.
53
+ `npm install --save @edgeiq/edgeiq-api-js`
54
+ # OR
55
+ `yarn add @edgeiq/edgeiq-api-js`
@@ -1 +1 @@
1
- export {};
1
+ export {};
@@ -1,110 +1,143 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- var __1 = require("..");
40
- var __2 = require("..");
41
- var constants_1 = require("../constants");
42
- var helpers_1 = require("../helpers");
43
- var testConstants_1 = require("../testConstants");
44
- describe('Authentication', function () {
45
- __1.EdgeIQAPI.init();
46
- it('Wrong user', function () { return __awaiter(void 0, void 0, void 0, function () {
47
- var error_1;
48
- return __generator(this, function (_a) {
49
- switch (_a.label) {
50
- case 0:
51
- _a.trys.push([0, 2, , 3]);
52
- return [4, __2.Authentication.login(testConstants_1.TestAuth.noUser, testConstants_1.TestAuth.noUser)];
53
- case 1:
54
- _a.sent();
55
- return [3, 3];
56
- case 2:
57
- error_1 = _a.sent();
58
- if ((0, helpers_1.isApiError)(error_1)) {
59
- expect(error_1.message).toBe(constants_1.ResponseErrorsMessages.noUser);
60
- }
61
- return [3, 3];
62
- case 3: return [2];
63
- }
64
- });
65
- }); });
66
- it('Wrong password', function () { return __awaiter(void 0, void 0, void 0, function () {
67
- var error_2;
68
- return __generator(this, function (_a) {
69
- switch (_a.label) {
70
- case 0:
71
- _a.trys.push([0, 2, , 3]);
72
- return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.noUser)];
73
- case 1:
74
- _a.sent();
75
- return [3, 3];
76
- case 2:
77
- error_2 = _a.sent();
78
- if ((0, helpers_1.isApiError)(error_2)) {
79
- expect(error_2.message).toBe(constants_1.ResponseErrorsMessages.invalidPassword);
80
- }
81
- return [3, 3];
82
- case 3: return [2];
83
- }
84
- });
85
- }); });
86
- it('Correct user and password', function () { return __awaiter(void 0, void 0, void 0, function () {
87
- var result;
88
- return __generator(this, function (_a) {
89
- switch (_a.label) {
90
- case 0: return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.pass)];
91
- case 1:
92
- result = _a.sent();
93
- expect(result.session_token).not.toBeNull();
94
- return [2];
95
- }
96
- });
97
- }); });
98
- it('Gets logged user data', function () { return __awaiter(void 0, void 0, void 0, function () {
99
- var result;
100
- return __generator(this, function (_a) {
101
- switch (_a.label) {
102
- case 0: return [4, __2.Authentication.me()];
103
- case 1:
104
- result = _a.sent();
105
- expect(result._id).not.toBeNull();
106
- return [2];
107
- }
108
- });
109
- }); });
110
- });
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ var __1 = require("..");
40
+ var __2 = require("..");
41
+ var constants_1 = require("../constants");
42
+ var helpers_1 = require("../helpers");
43
+ var testConstants_1 = require("../testConstants");
44
+ describe('Authentication', function () {
45
+ __1.EdgeIQAPI.init();
46
+ it('Wrong user', function () { return __awaiter(void 0, void 0, void 0, function () {
47
+ var error_1;
48
+ return __generator(this, function (_a) {
49
+ switch (_a.label) {
50
+ case 0:
51
+ _a.trys.push([0, 2, , 3]);
52
+ return [4, __2.Authentication.login(testConstants_1.TestAuth.noUser, testConstants_1.TestAuth.noUser)];
53
+ case 1:
54
+ _a.sent();
55
+ return [3, 3];
56
+ case 2:
57
+ error_1 = _a.sent();
58
+ if ((0, helpers_1.isApiError)(error_1)) {
59
+ expect(error_1.message).toBe(constants_1.ResponseErrorsMessages.noUser);
60
+ }
61
+ return [3, 3];
62
+ case 3: return [2];
63
+ }
64
+ });
65
+ }); });
66
+ it('Wrong password', function () { return __awaiter(void 0, void 0, void 0, function () {
67
+ var error_2;
68
+ return __generator(this, function (_a) {
69
+ switch (_a.label) {
70
+ case 0:
71
+ _a.trys.push([0, 2, , 3]);
72
+ return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.noUser)];
73
+ case 1:
74
+ _a.sent();
75
+ return [3, 3];
76
+ case 2:
77
+ error_2 = _a.sent();
78
+ if ((0, helpers_1.isApiError)(error_2)) {
79
+ expect(error_2.message).toBe(constants_1.ResponseErrorsMessages.invalidPassword);
80
+ }
81
+ return [3, 3];
82
+ case 3: return [2];
83
+ }
84
+ });
85
+ }); });
86
+ it('Correct user and password', function () { return __awaiter(void 0, void 0, void 0, function () {
87
+ var result;
88
+ return __generator(this, function (_a) {
89
+ switch (_a.label) {
90
+ case 0: return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.pass)];
91
+ case 1:
92
+ result = _a.sent();
93
+ expect(result.session_token).not.toBeNull();
94
+ return [2];
95
+ }
96
+ });
97
+ }); });
98
+ it('Gets logged user data', function () { return __awaiter(void 0, void 0, void 0, function () {
99
+ var result;
100
+ return __generator(this, function (_a) {
101
+ switch (_a.label) {
102
+ case 0: return [4, __2.Authentication.me()];
103
+ case 1:
104
+ result = _a.sent();
105
+ expect(result._id).not.toBeNull();
106
+ return [2];
107
+ }
108
+ });
109
+ }); });
110
+ it("Doesn't allow token expiration to be set longer than a week", function () { return __awaiter(void 0, void 0, void 0, function () {
111
+ var oneWeekOneSecond, error_3, err, error_4, err;
112
+ return __generator(this, function (_a) {
113
+ switch (_a.label) {
114
+ case 0:
115
+ oneWeekOneSecond = 604801000;
116
+ _a.label = 1;
117
+ case 1:
118
+ _a.trys.push([1, 3, , 4]);
119
+ return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.noUser, oneWeekOneSecond)];
120
+ case 2:
121
+ _a.sent();
122
+ return [3, 4];
123
+ case 3:
124
+ error_3 = _a.sent();
125
+ err = error_3;
126
+ expect(err.message).toBe(constants_1.ResponseErrorsMessages.invalidTokenExpiration);
127
+ return [3, 4];
128
+ case 4:
129
+ _a.trys.push([4, 6, , 7]);
130
+ return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.noUser, 0)];
131
+ case 5:
132
+ _a.sent();
133
+ return [3, 7];
134
+ case 6:
135
+ error_4 = _a.sent();
136
+ err = error_4;
137
+ expect(err.message).toBe(constants_1.ResponseErrorsMessages.invalidTokenExpiration);
138
+ return [3, 7];
139
+ case 7: return [2];
140
+ }
141
+ });
142
+ }); });
143
+ });
@@ -1 +1 @@
1
- export {};
1
+ export {};