@applitools/eyes-selenium 4.75.0 → 4.76.1

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/CHANGELOG.md CHANGED
@@ -1,5 +1,210 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.76.1](https://github.com/Applitools-Dev/sdk/compare/js/eyes-selenium@4.76.0...js/eyes-selenium@4.76.1) (2024-04-01)
4
+
5
+
6
+ ### Dependencies
7
+
8
+ * @applitools/spec-driver-selenium bumped to 1.5.74
9
+ #### Bug Fixes
10
+
11
+ * trigger JS release ([6022ac8](https://github.com/Applitools-Dev/sdk/commit/6022ac85626287a37101b65732e9d46c63bbd8b8))
12
+ * @applitools/ec-client bumped to 1.7.32
13
+
14
+ * @applitools/core-base bumped to 1.10.1
15
+ #### Bug Fixes
16
+
17
+ * trigger JS release ([6022ac8](https://github.com/Applitools-Dev/sdk/commit/6022ac85626287a37101b65732e9d46c63bbd8b8))
18
+ * @applitools/core bumped to 4.11.1
19
+
20
+ * @applitools/eyes bumped to 1.17.1
21
+ #### Bug Fixes
22
+
23
+ * trigger JS release ([6022ac8](https://github.com/Applitools-Dev/sdk/commit/6022ac85626287a37101b65732e9d46c63bbd8b8))
24
+
25
+
26
+
27
+
28
+ ## [4.76.0](https://github.com/Applitools-Dev/sdk/compare/js/eyes-selenium-v4.75.4...js/eyes-selenium@4.76.0) (2024-03-31)
29
+
30
+
31
+ ### Features
32
+
33
+ * add Eyes.getResults method ([#2046](https://github.com/Applitools-Dev/sdk/issues/2046)) ([#2069](https://github.com/Applitools-Dev/sdk/issues/2069)) ([4d263e1](https://github.com/Applitools-Dev/sdk/commit/4d263e19cb5e5708790a1a7ef90ff8f3eee50d91))
34
+ * added notification about outdated sdk version ([#2012](https://github.com/Applitools-Dev/sdk/issues/2012)) ([0f0a646](https://github.com/Applitools-Dev/sdk/commit/0f0a6462a56e7c97f9a22173c3b63af91e220adb))
35
+
36
+
37
+ ### Dependencies
38
+
39
+ * @applitools/spec-driver-selenium bumped to 1.5.73
40
+ #### Bug Fixes
41
+
42
+ * remove getSessionDetails call in JS Selenium ([#2280](https://github.com/Applitools-Dev/sdk/issues/2280)) ([d15748f](https://github.com/Applitools-Dev/sdk/commit/d15748f68c931f2f84c13efd8472399c1ff72e25))
43
+ * @applitools/ec-client bumped to 1.7.31
44
+
45
+ * @applitools/core-base bumped to 1.10.0
46
+ #### Features
47
+
48
+ * Add GitMergeBaseTimestamp support ([#2281](https://github.com/Applitools-Dev/sdk/issues/2281)) ([5489608](https://github.com/Applitools-Dev/sdk/commit/54896085445663a51b5e5595a2517e48fa8736f3))
49
+ * batch buildId ([#2263](https://github.com/Applitools-Dev/sdk/issues/2263)) ([f19ac38](https://github.com/Applitools-Dev/sdk/commit/f19ac38612bc55d870f59161a39b5b7eb01e25f3))
50
+ * send heartbeat to keep test alive ([#2246](https://github.com/Applitools-Dev/sdk/issues/2246)) ([58636e7](https://github.com/Applitools-Dev/sdk/commit/58636e7dd353f06eb2b3bee1120ab81c3f9fcc94))
51
+
52
+
53
+ #### Bug Fixes
54
+
55
+ * retry Eyes request on ECONNREFUSED to improve stability during deployment ([d1e4dca](https://github.com/Applitools-Dev/sdk/commit/d1e4dcae79185578808b4f2c5f94fa79d7d914a3))
56
+ * @applitools/core bumped to 4.11.0
57
+ #### Features
58
+
59
+ * Add GitMergeBaseTimestamp support ([#2281](https://github.com/Applitools-Dev/sdk/issues/2281)) ([5489608](https://github.com/Applitools-Dev/sdk/commit/54896085445663a51b5e5595a2517e48fa8736f3))
60
+ * batch buildId ([#2263](https://github.com/Applitools-Dev/sdk/issues/2263)) ([f19ac38](https://github.com/Applitools-Dev/sdk/commit/f19ac38612bc55d870f59161a39b5b7eb01e25f3))
61
+
62
+
63
+
64
+ * @applitools/eyes bumped to 1.17.0
65
+ #### Features
66
+
67
+ * add Eyes.getResults method ([#2046](https://github.com/Applitools-Dev/sdk/issues/2046)) ([#2069](https://github.com/Applitools-Dev/sdk/issues/2069)) ([4d263e1](https://github.com/Applitools-Dev/sdk/commit/4d263e19cb5e5708790a1a7ef90ff8f3eee50d91))
68
+ * Add GitMergeBaseTimestamp support ([#2281](https://github.com/Applitools-Dev/sdk/issues/2281)) ([5489608](https://github.com/Applitools-Dev/sdk/commit/54896085445663a51b5e5595a2517e48fa8736f3))
69
+ * added `enableEyesLogs` configuration to the eyes service ([639ca8a](https://github.com/Applitools-Dev/sdk/commit/639ca8a021008d06fc09d19ca58ac3d00a18e4c3))
70
+ * added `useExecutionCloud` configuration to the eyes service ([#2033](https://github.com/Applitools-Dev/sdk/issues/2033)) ([639ca8a](https://github.com/Applitools-Dev/sdk/commit/639ca8a021008d06fc09d19ca58ac3d00a18e4c3))
71
+ * generate more enums ([#2179](https://github.com/Applitools-Dev/sdk/issues/2179)) ([5f4f916](https://github.com/Applitools-Dev/sdk/commit/5f4f91621b791a02464191123f69b12f590b9efe))
72
+ * ios multi device target ([#2160](https://github.com/Applitools-Dev/sdk/issues/2160)) ([3874fb8](https://github.com/Applitools-Dev/sdk/commit/3874fb8ad77039abbb5ab78c00ffb45829b2db28))
73
+
74
+
75
+ #### Bug Fixes
76
+
77
+ * error to unknown type in exception ([#2035](https://github.com/Applitools-Dev/sdk/issues/2035)) ([16d78c3](https://github.com/Applitools-Dev/sdk/commit/16d78c3cce90a5cb50cc2aa4e9ab6a58b7b93f89))
78
+ * fixed default value in `useSystemScreenshot` method of check settings ([42a773c](https://github.com/Applitools-Dev/sdk/commit/42a773cc57e8e5de528a049b376159615892003b))
79
+ * fixed issue when w3c properties were added to legacy capabilities object in `Eyes.setMobileCapabilities` method ([94d785f](https://github.com/Applitools-Dev/sdk/commit/94d785f0428df101c207d6f09a55c46f2bdbf19e))
80
+
81
+
82
+
83
+
84
+ ## [4.75.3](https://github.com/Applitools-Dev/sdk/compare/js/eyes-selenium@4.75.2...js/eyes-selenium@4.75.3) (2024-03-18)
85
+
86
+
87
+ ### Dependencies
88
+
89
+ * @applitools/css-tree bumped to 1.1.2
90
+ #### Bug Fixes
91
+
92
+ * trigger js release again ([1695f3d](https://github.com/Applitools-Dev/sdk/commit/1695f3d9967c7ab7b5d8c8637e86faa935a9047f))
93
+ * @applitools/driver bumped to 1.16.5
94
+ #### Bug Fixes
95
+
96
+ * trigger js release again ([1695f3d](https://github.com/Applitools-Dev/sdk/commit/1695f3d9967c7ab7b5d8c8637e86faa935a9047f))
97
+ * @applitools/dom-snapshot bumped to 4.9.2
98
+
99
+ * @applitools/spec-driver-webdriver bumped to 1.1.3
100
+
101
+ * @applitools/spec-driver-selenium bumped to 1.5.72
102
+
103
+ * @applitools/spec-driver-puppeteer bumped to 1.4.3
104
+
105
+ * @applitools/screenshoter bumped to 3.8.27
106
+
107
+ * @applitools/nml-client bumped to 1.7.5
108
+
109
+ * @applitools/ufg-client bumped to 1.10.2
110
+
111
+ * @applitools/ec-client bumped to 1.7.30
112
+
113
+ * @applitools/core bumped to 4.10.2
114
+
115
+ * @applitools/eyes bumped to 1.16.2
116
+
117
+
118
+ ## [4.75.2](https://github.com/Applitools-Dev/sdk/compare/js/eyes-selenium@4.75.1...js/eyes-selenium@4.75.2) (2024-03-18)
119
+
120
+
121
+ ### Dependencies
122
+
123
+ * @applitools/css-tree bumped to 1.1.1
124
+ #### Bug Fixes
125
+
126
+ * trigger js release ([dbc9bf8](https://github.com/Applitools-Dev/sdk/commit/dbc9bf8da3ab5d93e570881ba2c61efa47a1b342))
127
+ * @applitools/driver bumped to 1.16.4
128
+ #### Bug Fixes
129
+
130
+ * trigger js release ([dbc9bf8](https://github.com/Applitools-Dev/sdk/commit/dbc9bf8da3ab5d93e570881ba2c61efa47a1b342))
131
+ * @applitools/dom-snapshot bumped to 4.9.1
132
+
133
+ * @applitools/spec-driver-webdriver bumped to 1.1.2
134
+
135
+ * @applitools/spec-driver-selenium bumped to 1.5.71
136
+
137
+ * @applitools/spec-driver-puppeteer bumped to 1.4.2
138
+
139
+ * @applitools/screenshoter bumped to 3.8.26
140
+
141
+ * @applitools/nml-client bumped to 1.7.4
142
+
143
+ * @applitools/ufg-client bumped to 1.10.1
144
+
145
+ * @applitools/ec-client bumped to 1.7.29
146
+
147
+ * @applitools/core bumped to 4.10.1
148
+
149
+ * @applitools/eyes bumped to 1.16.1
150
+
151
+
152
+ ## [4.75.1](https://github.com/Applitools-Dev/sdk/compare/js/eyes-selenium@4.75.0...js/eyes-selenium@4.75.1) (2024-03-17)
153
+
154
+
155
+ ### Dependencies
156
+
157
+ * @applitools/css-tree bumped to 1.1.0
158
+ #### Features
159
+
160
+ * support [@container](https://github.com/container) and [@layer](https://github.com/layer) cssom rules ([#2209](https://github.com/Applitools-Dev/sdk/issues/2209)) ([7da07c4](https://github.com/Applitools-Dev/sdk/commit/7da07c4f5b7f338fb5944ce244af8f2de928cab6))
161
+ * @applitools/dom-snapshot bumped to 4.9.0
162
+ #### Features
163
+
164
+ * support [@container](https://github.com/container) and [@layer](https://github.com/layer) cssom rules ([#2209](https://github.com/Applitools-Dev/sdk/issues/2209)) ([7da07c4](https://github.com/Applitools-Dev/sdk/commit/7da07c4f5b7f338fb5944ce244af8f2de928cab6))
165
+
166
+
167
+
168
+ * @applitools/spec-driver-webdriver bumped to 1.1.1
169
+
170
+ * @applitools/spec-driver-selenium bumped to 1.5.70
171
+
172
+ * @applitools/spec-driver-puppeteer bumped to 1.4.1
173
+
174
+ * @applitools/driver bumped to 1.16.3
175
+ #### Bug Fixes
176
+
177
+ * skip execution of getCurrentWorld and getWorlds when env var is set ([#2234](https://github.com/Applitools-Dev/sdk/issues/2234)) ([3a88602](https://github.com/Applitools-Dev/sdk/commit/3a886028b0437b73dae0474408d9bb74ba940dec))
178
+ * trigger build ([acb9c88](https://github.com/Applitools-Dev/sdk/commit/acb9c88161cf55e8b1e409425b5571d69a2e1d5c))
179
+ * @applitools/screenshoter bumped to 3.8.25
180
+
181
+ * @applitools/nml-client bumped to 1.7.3
182
+
183
+ * @applitools/ufg-client bumped to 1.10.0
184
+ #### Features
185
+
186
+ * support [@container](https://github.com/container) and [@layer](https://github.com/layer) cssom rules ([#2209](https://github.com/Applitools-Dev/sdk/issues/2209)) ([7da07c4](https://github.com/Applitools-Dev/sdk/commit/7da07c4f5b7f338fb5944ce244af8f2de928cab6))
187
+ * throttle fetching resources by default ([#2216](https://github.com/Applitools-Dev/sdk/issues/2216)) ([a2da800](https://github.com/Applitools-Dev/sdk/commit/a2da80076eb30241a168500903a9d80344900213))
188
+
189
+
190
+
191
+ * @applitools/core bumped to 4.10.0
192
+ #### Features
193
+
194
+ * support webview in nml ([#2236](https://github.com/Applitools-Dev/sdk/issues/2236)) ([b4440d8](https://github.com/Applitools-Dev/sdk/commit/b4440d86a863d1af8089f8606ac6819636fa46f4))
195
+
196
+
197
+
198
+ * @applitools/ec-client bumped to 1.7.28
199
+
200
+ * @applitools/eyes bumped to 1.16.0
201
+ #### Features
202
+
203
+ * ios multi device target ([#2160](https://github.com/Applitools-Dev/sdk/issues/2160)) ([3874fb8](https://github.com/Applitools-Dev/sdk/commit/3874fb8ad77039abbb5ab78c00ffb45829b2db28))
204
+
205
+
206
+
207
+
3
208
  ## [4.75.0](https://github.com/applitools/eyes.sdk.javascript1/compare/js/eyes-selenium-v4.74.1...js/eyes-selenium@4.75.0) (2024-02-29)
4
209
 
5
210
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@applitools/eyes-selenium",
3
- "version": "4.75.0",
3
+ "version": "4.76.1",
4
4
  "description": "Applitools Eyes SDK for Selenium WebDriver",
5
5
  "keywords": [
6
6
  "eyes-selenium",
@@ -41,8 +41,8 @@
41
41
  "up:framework": "echo \"$(jq '.devDependencies[\"selenium-webdriver\"] = $ENV.APPLITOOLS_FRAMEWORK_VERSION' ./package.json)\" > ./package.json"
42
42
  },
43
43
  "dependencies": {
44
- "@applitools/eyes": "1.15.0",
45
- "@applitools/spec-driver-selenium": "1.5.69"
44
+ "@applitools/eyes": "1.17.1",
45
+ "@applitools/spec-driver-selenium": "1.5.74"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@applitools/api-extractor": "^1.2.22",
package/types/index.d.ts CHANGED
@@ -368,6 +368,7 @@ export type ConfigurationPlain = {
368
368
  environmentName?: undefined | string;
369
369
  branchName?: undefined | string;
370
370
  parentBranchName?: undefined | string;
371
+ gitMergeBaseTimestamp?: undefined | string;
371
372
  baselineBranchName?: undefined | string;
372
373
  compareWithParentBranch?: undefined | boolean;
373
374
  ignoreBaseline?: undefined | boolean;
@@ -389,7 +390,7 @@ export type ConfigurationPlain = {
389
390
  rotation?: undefined | ImageRotationPlain;
390
391
  scaleRatio?: undefined | number;
391
392
  concurrentSessions?: undefined | number;
392
- browsersInfo?: undefined | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
393
+ browsersInfo?: undefined | Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>;
393
394
  visualGridOptions?: undefined | Record<string, any>;
394
395
  layoutBreakpoints?: undefined | boolean | Array<number> | { breakpoints: boolean | Array<number>; reload?: undefined | boolean; };
395
396
  disableBrowserFetching?: undefined | boolean;
@@ -494,6 +495,10 @@ export class Configuration implements Required<ConfigurationPlain> {
494
495
  set baselineBranchName(baselineBranchName: string);
495
496
  getBaselineBranchName(): string;
496
497
  setBaselineBranchName(baselineBranchName: string): Configuration;
498
+ get gitMergeBaseTimestamp(): string;
499
+ set gitMergeBaseTimestamp(gitMergeBaseTimestamp: string);
500
+ getGitMergeBaseTimestamp(): string;
501
+ setGitMergeBaseTimestamp(gitMergeBaseTimestamp: string): Configuration;
497
502
  get compareWithParentBranch(): boolean;
498
503
  set compareWithParentBranch(compareWithParentBranch: boolean);
499
504
  getCompareWithParentBranch(): boolean;
@@ -608,9 +613,9 @@ export class Configuration implements Required<ConfigurationPlain> {
608
613
  set concurrentSessions(concurrentSessions: number);
609
614
  getConcurrentSessions(): number;
610
615
  setConcurrentSessions(concurrentSessions: number): Configuration;
611
- get browsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>;
612
- set browsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo>);
613
- getBrowsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }>;
616
+ get browsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>;
617
+ set browsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>);
618
+ getBrowsersInfo(): Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: "iPhone X" | "iPhone XR" | "iPhone 11" | "iPhone 11 Pro Max" | "iPhone 11 Pro" | "iPhone 8" | "iPhone 8 Plus" | "iPhone Xs" | "iPhone Xs Max" | "iPhone 12" | "iPhone 12 mini" | "iPhone 12 Pro Max" | "iPhone 12 Pro" | "iPhone 13" | "iPhone 13 mini" | "iPhone 13 Pro Max" | "iPhone 13 Pro" | "iPhone 14" | "iPhone 14 Plus" | "iPhone 14 Pro" | "iPhone 14 Pro Max" | "iPhone SE (2nd generation)" | "iPhone SE (3rd generation)"; }>;
614
619
  setBrowsersInfo(browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }>): Configuration;
615
620
  addBrowsers(...browsersInfo: Array<DesktopBrowserInfo | ChromeEmulationInfo | IOSDeviceInfo | AndroidDeviceInfo | { deviceName: DeviceNamePlain; screenOrientation?: undefined | ScreenOrientationPlain; }>): Configuration;
616
621
  addBrowser(browserInfo: DesktopBrowserInfo): Configuration;
@@ -622,6 +627,29 @@ export class Configuration implements Required<ConfigurationPlain> {
622
627
  addDeviceEmulation(deviceName: DeviceNamePlain, screenOrientation?: undefined | ScreenOrientationPlain): Configuration;
623
628
  addMobileDevice(deviceName: AndroidDeviceNamePlain, screenOrientation: ScreenOrientationPlain, version?: undefined | AndroidVersionPlain): Configuration;
624
629
  addMobileDevice(deviceName: IosDeviceNamePlain, screenOrientation: ScreenOrientationPlain, version?: undefined | AndroidVersionPlain): Configuration;
630
+ addMultiDeviceTarget(deviceName: "iPhone X"): Configuration;
631
+ addMultiDeviceTarget(deviceName: "iPhone XR"): Configuration;
632
+ addMultiDeviceTarget(deviceName: "iPhone 11"): Configuration;
633
+ addMultiDeviceTarget(deviceName: "iPhone 11 Pro Max"): Configuration;
634
+ addMultiDeviceTarget(deviceName: "iPhone 11 Pro"): Configuration;
635
+ addMultiDeviceTarget(deviceName: "iPhone 8"): Configuration;
636
+ addMultiDeviceTarget(deviceName: "iPhone 8 Plus"): Configuration;
637
+ addMultiDeviceTarget(deviceName: "iPhone Xs"): Configuration;
638
+ addMultiDeviceTarget(deviceName: "iPhone Xs Max"): Configuration;
639
+ addMultiDeviceTarget(deviceName: "iPhone 12"): Configuration;
640
+ addMultiDeviceTarget(deviceName: "iPhone 12 mini"): Configuration;
641
+ addMultiDeviceTarget(deviceName: "iPhone 12 Pro Max"): Configuration;
642
+ addMultiDeviceTarget(deviceName: "iPhone 12 Pro"): Configuration;
643
+ addMultiDeviceTarget(deviceName: "iPhone 13"): Configuration;
644
+ addMultiDeviceTarget(deviceName: "iPhone 13 mini"): Configuration;
645
+ addMultiDeviceTarget(deviceName: "iPhone 13 Pro Max"): Configuration;
646
+ addMultiDeviceTarget(deviceName: "iPhone 13 Pro"): Configuration;
647
+ addMultiDeviceTarget(deviceName: "iPhone 14"): Configuration;
648
+ addMultiDeviceTarget(deviceName: "iPhone 14 Plus"): Configuration;
649
+ addMultiDeviceTarget(deviceName: "iPhone 14 Pro"): Configuration;
650
+ addMultiDeviceTarget(deviceName: "iPhone 14 Pro Max"): Configuration;
651
+ addMultiDeviceTarget(deviceName: "iPhone SE (2nd generation)"): Configuration;
652
+ addMultiDeviceTarget(deviceName: "iPhone SE (3rd generation)"): Configuration;
625
653
  get visualGridOptions(): { [key: string]: any; };
626
654
  set visualGridOptions(visualGridOptions: { [key: string]: any; });
627
655
  getVisualGridOptions(): { [key: string]: any; };