@evercam/api 1.0.0-e03a0c41b → 1.0.0-e13c64fc3

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 (128) hide show
  1. package/README.md +5 -0
  2. package/dist/api/api/3dFirebaseApi.d.ts +27 -0
  3. package/dist/api/api/adminApi.d.ts +366 -0
  4. package/dist/api/api/aiApi.d.ts +127 -0
  5. package/dist/api/api/authzApi.d.ts +38 -0
  6. package/dist/api/{client → api/client}/axios.d.ts +2 -1
  7. package/dist/api/{client → api/client}/customErrors.d.ts +10 -0
  8. package/dist/api/{client → api/client}/interceptors.d.ts +3 -2
  9. package/dist/api/api/client/swr/Swr.d.ts +14 -0
  10. package/dist/api/api/client/swr/SwrStore.d.ts +10 -0
  11. package/dist/api/api/evercamApi.d.ts +329 -0
  12. package/dist/api/api/evercamLabsApi.d.ts +46 -0
  13. package/dist/api/{exNvrApi.d.ts → api/exNvrApi.d.ts} +1 -1
  14. package/dist/api/api/index.d.ts +13 -0
  15. package/dist/api/api/ingestApi.d.ts +147 -0
  16. package/dist/api/{ptzApi.d.ts → api/ptzApi.d.ts} +13 -4
  17. package/dist/api/api/videoWallApi.d.ts +9 -0
  18. package/dist/api/api/weatherApi.d.ts +9 -0
  19. package/dist/api/index.d.ts +3 -13
  20. package/dist/api/types/360.d.ts +276 -0
  21. package/dist/api/types/aconex.d.ts +143 -0
  22. package/dist/api/types/admin.d.ts +51 -0
  23. package/dist/{types → api/types}/analytics.d.ts +214 -103
  24. package/dist/{types → api/types}/anpr.d.ts +35 -19
  25. package/dist/{types → api/types}/auditLogs.d.ts +1 -1
  26. package/dist/api/types/authz.d.ts +60 -0
  27. package/dist/{types → api/types}/autodesk.d.ts +7 -7
  28. package/dist/api/types/automation.d.ts +95 -0
  29. package/dist/{types → api/types}/axios.d.ts +22 -2
  30. package/dist/{types → api/types}/bim.d.ts +11 -5
  31. package/dist/{types → api/types}/camera.d.ts +110 -125
  32. package/dist/api/types/comments.d.ts +55 -0
  33. package/dist/api/types/company.d.ts +115 -0
  34. package/dist/{types → api/types}/compare.d.ts +20 -5
  35. package/dist/{types → api/types}/connector.d.ts +9 -6
  36. package/dist/api/types/coolify.d.ts +36 -0
  37. package/dist/{types → api/types}/copilot.d.ts +19 -13
  38. package/dist/{types → api/types}/countries.d.ts +0 -7
  39. package/dist/{types → api/types}/credentials.d.ts +1 -0
  40. package/dist/api/types/detections.d.ts +121 -0
  41. package/dist/{types → api/types}/errors.d.ts +13 -0
  42. package/dist/{types → api/types}/gateReport.d.ts +46 -150
  43. package/dist/api/types/hdd.d.ts +88 -0
  44. package/dist/{types → api/types}/index.d.ts +15 -2
  45. package/dist/api/types/ingest.d.ts +134 -0
  46. package/dist/{types → api/types}/kit.d.ts +94 -6
  47. package/dist/{types → api/types}/media.d.ts +2 -1
  48. package/dist/api/types/notification.d.ts +57 -0
  49. package/dist/{types → api/types}/nvr.d.ts +2 -1
  50. package/dist/api/types/oauth.d.ts +62 -0
  51. package/dist/{types/sitePlanner.d.ts → api/types/planner.d.ts} +11 -2
  52. package/dist/api/types/posthog.d.ts +33 -0
  53. package/dist/api/types/procore.d.ts +229 -0
  54. package/dist/{types → api/types}/progressPhoto.d.ts +11 -23
  55. package/dist/api/types/project.d.ts +242 -0
  56. package/dist/{types → api/types}/recording.d.ts +3 -4
  57. package/dist/api/types/recycleBin.d.ts +14 -0
  58. package/dist/api/types/ring.d.ts +53 -0
  59. package/dist/{types → api/types}/roi.d.ts +2 -1
  60. package/dist/{types → api/types}/routeParams.d.ts +4 -2
  61. package/dist/{types → api/types}/router.d.ts +20 -1
  62. package/dist/{types → api/types}/shared.d.ts +14 -21
  63. package/dist/api/types/shares.d.ts +58 -0
  64. package/dist/{types → api/types}/sim.d.ts +6 -6
  65. package/dist/api/types/siteAnalytics.d.ts +287 -0
  66. package/dist/api/types/smartSeach.d.ts +5 -0
  67. package/dist/{types → api/types}/snapshots.d.ts +10 -1
  68. package/dist/api/types/sso.d.ts +55 -0
  69. package/dist/api/types/storyblok.d.ts +40 -0
  70. package/dist/api/types/streaming.d.ts +97 -0
  71. package/dist/api/types/systemCheck.d.ts +11 -0
  72. package/dist/api/types/tag.d.ts +12 -0
  73. package/dist/api/types/time.d.ts +7 -0
  74. package/dist/{types → api/types}/timelapse.d.ts +18 -4
  75. package/dist/{types → api/types}/user.d.ts +105 -35
  76. package/dist/api/types/videoWall.d.ts +66 -0
  77. package/dist/api/types/weather.d.ts +153 -0
  78. package/dist/{types → api/types}/widget.d.ts +103 -20
  79. package/dist/api/types/xweather.d.ts +12 -0
  80. package/dist/{utils.d.ts → api/utils.d.ts} +1 -0
  81. package/dist/index.d.ts +2 -3
  82. package/dist/index.js +1741 -960
  83. package/dist/index.js.map +1 -1
  84. package/dist/index.umd.cjs +1 -1
  85. package/dist/index.umd.cjs.map +1 -1
  86. package/dist/shared/api/index.d.ts +3 -0
  87. package/dist/shared/components/timelinePlayer/providers/index.d.ts +3 -0
  88. package/dist/shared/components/timelinePlayer/providers/timelineAnprProvider.d.ts +17 -0
  89. package/dist/shared/components/timelinePlayer/providers/timelineDataProvider.d.ts +13 -0
  90. package/dist/shared/components/timelinePlayer/providers/timelineLuminanceProvider.d.ts +16 -0
  91. package/dist/shared/types/components.d.ts +270 -0
  92. package/dist/shared/types/imagePlayer.d.ts +34 -0
  93. package/dist/shared/types/index.d.ts +4 -0
  94. package/dist/shared/types/timeline.d.ts +10 -0
  95. package/package.json +8 -7
  96. package/dist/api/3dFirebaseApi.d.ts +0 -9
  97. package/dist/api/adminApi.d.ts +0 -289
  98. package/dist/api/aiApi.d.ts +0 -76
  99. package/dist/api/authzApi.d.ts +0 -21
  100. package/dist/api/evercamApi.d.ts +0 -266
  101. package/dist/api/evercamLabsApi.d.ts +0 -50
  102. package/dist/api/ingestApi.d.ts +0 -65
  103. package/dist/api/videoWallApi.d.ts +0 -9
  104. package/dist/api/weatherApi.d.ts +0 -25
  105. package/dist/types/360.d.ts +0 -83
  106. package/dist/types/aconex.d.ts +0 -45
  107. package/dist/types/automation.d.ts +0 -6
  108. package/dist/types/comments.d.ts +0 -36
  109. package/dist/types/company.d.ts +0 -46
  110. package/dist/types/detections.d.ts +0 -70
  111. package/dist/types/devices.d.ts +0 -228
  112. package/dist/types/ingest.d.ts +0 -43
  113. package/dist/types/notification.d.ts +0 -27
  114. package/dist/types/procore.d.ts +0 -76
  115. package/dist/types/project.d.ts +0 -120
  116. package/dist/types/shares.d.ts +0 -192
  117. package/dist/types/siteAnalytics.d.ts +0 -5
  118. package/dist/types/streaming.d.ts +0 -119
  119. package/dist/types/time.d.ts +0 -19
  120. package/dist/types/videoWall.d.ts +0 -33
  121. package/dist/types/weather.d.ts +0 -83
  122. /package/dist/api/{client → api/client}/index.d.ts +0 -0
  123. /package/dist/api/{webRtcApi.d.ts → api/webRtcApi.d.ts} +0 -0
  124. /package/dist/{types → api/types}/drone.d.ts +0 -0
  125. /package/dist/{types → api/types}/map.d.ts +0 -0
  126. /package/dist/{types → api/types}/storageServers.d.ts +0 -0
  127. /package/dist/{types → api/types}/vendorModel.d.ts +0 -0
  128. /package/dist/{types → api/types}/voyageControl.d.ts +0 -0
@@ -0,0 +1,276 @@
1
+ import { DateType } from "@evercam/api/types/time";
2
+ export type _360CameraParams = {
3
+ azimuthAngle: number;
4
+ polarAngle: number;
5
+ };
6
+ export type _360Vector3D = {
7
+ x: number;
8
+ y: number;
9
+ z: number;
10
+ };
11
+ export type _360Geolocation = {
12
+ latitude: number;
13
+ longitude: number;
14
+ };
15
+ export type _360CameraRotation = {
16
+ azimuthAngle: number;
17
+ polarAngle: number;
18
+ };
19
+ export type _360Marker3D = {
20
+ cameraPosition: _360Vector3D;
21
+ geolocation: _360Geolocation;
22
+ nextRoomId: _360MakerId;
23
+ position: _360Vector3D;
24
+ rotation: {
25
+ _order: "XYZ" | string;
26
+ _x: number;
27
+ _y: number;
28
+ _z: number;
29
+ isEuler: boolean;
30
+ };
31
+ };
32
+ export type _360Tag = {
33
+ id: string;
34
+ tagType: string;
35
+ comment: string;
36
+ creationDate: number;
37
+ currentRoom: _360MakerId;
38
+ position: _360Vector3D;
39
+ cameraRotation: _360CameraRotation;
40
+ };
41
+ export type _360FloorId = string | number;
42
+ export type _360Walk = Record<_360FloorId, _360Floor>;
43
+ export type _360MakerId = string;
44
+ export type _360Floor = {
45
+ _3DMarkers: _360Marker3D[];
46
+ cameraRotation: _360CameraRotation;
47
+ fbxModel: string;
48
+ initialMarker: _360MakerId;
49
+ modelViewerFeatureFlag: boolean;
50
+ route: {
51
+ cameraHeadingOffset: string;
52
+ overlayID: number;
53
+ track: string;
54
+ };
55
+ sceneScale: number;
56
+ steps: number;
57
+ tags: Record<string, _360Tag>;
58
+ };
59
+ export type _360WalkV2 = {
60
+ archive: string;
61
+ date: string;
62
+ deviceSerial: string | null;
63
+ endPosition: unknown | null;
64
+ floor: string;
65
+ floorId: number;
66
+ id: number;
67
+ images: string[];
68
+ insertedAt: string;
69
+ mobileAudios: string[];
70
+ mobileAudiosArchive: string;
71
+ mobilePhotos: string[];
72
+ mobilePhotosArchive: string;
73
+ model: string;
74
+ name: string;
75
+ processingStatus: string;
76
+ projectId: string;
77
+ report: string;
78
+ route: unknown | null;
79
+ startPosition: unknown | null;
80
+ tusLinks: unknown | null;
81
+ updatedAt: string;
82
+ uploadedBy: string;
83
+ videoArchive: string;
84
+ videos: string[];
85
+ };
86
+ export type _360FloorV2 = {
87
+ id: _360FloorId;
88
+ assets: _360WalkV2[];
89
+ projectId: string;
90
+ name: string;
91
+ mapStyle: string;
92
+ hasOverlay: boolean;
93
+ isCalibrated: boolean;
94
+ createdBy: string | null;
95
+ overlayPosition: {
96
+ northEast: {
97
+ lat: number;
98
+ lng: number;
99
+ };
100
+ northWest: {
101
+ lat: number;
102
+ lng: number;
103
+ };
104
+ southEast: {
105
+ lat: number;
106
+ lng: number;
107
+ };
108
+ southWest: {
109
+ lat: number;
110
+ lng: number;
111
+ };
112
+ };
113
+ insertedAt: string;
114
+ updatedAt: string;
115
+ };
116
+ export type _360Scene = {
117
+ date: string;
118
+ dateID: number;
119
+ floors: {
120
+ floorID: _360FloorId;
121
+ name: string;
122
+ }[];
123
+ polarAngle: number;
124
+ azimuthAngle: number;
125
+ };
126
+ export type _360SceneRoute = {
127
+ cameraHeadingOffset?: number;
128
+ overlayID?: number;
129
+ track?: string;
130
+ };
131
+ export type _360FullProject = {
132
+ dates: _360SceneWithFloors[];
133
+ integrationType: string;
134
+ projectId: string;
135
+ projectName: string;
136
+ providerID: string;
137
+ providerPrefix: string;
138
+ providerSuffix: string;
139
+ timeline: string;
140
+ uniqueId: string;
141
+ };
142
+ export type _360FullFloor = _360Floor & {
143
+ id: _360FloorId;
144
+ name: string;
145
+ };
146
+ export type _360SceneWithFloors = _360Scene & {
147
+ floors: _360FullFloor[];
148
+ };
149
+ export type _360ProjectJsonResponse = {
150
+ dates: _360Scene[];
151
+ [key: string]: any;
152
+ };
153
+ export type MobileCaptureSnapshot = {
154
+ id: string | number;
155
+ projectId?: string;
156
+ uploadedBy: string;
157
+ updatedAt: string;
158
+ assetType: string;
159
+ thumbnailUrl: string;
160
+ };
161
+ export declare enum _360UrlParams {
162
+ DateId = "date_id",
163
+ Date = "date",
164
+ Floor = "floor",
165
+ Marker = "marker",
166
+ PolarAngle = "polarAngle",
167
+ AzimuthAngle = "azimuthAngle"
168
+ }
169
+ export declare enum _360AssetType {
170
+ Video = "video",
171
+ Image = "image",
172
+ Model = "model",
173
+ Route = "route",
174
+ MobilePhoto = "mobile_photos",
175
+ MobileAudio = "mobile_audios"
176
+ }
177
+ export declare enum _360AssetLabel {
178
+ Walks = "walks",
179
+ MobilePhotos = "mobilePhotos"
180
+ }
181
+ export declare enum _360Feature {
182
+ BIM = "BIM",
183
+ Minimap = "Minimap",
184
+ Minimodel = "Minimodel"
185
+ }
186
+ export declare enum _360IntergrationType {
187
+ Evercam = "Evercam",
188
+ Matterport = "Matterport",
189
+ OpenSpace = "Openspace",
190
+ HoloBuilder = "Holobuilder",
191
+ DroneDeploy = "Dronedeploy"
192
+ }
193
+ export declare enum PathMarkerColor {
194
+ Start = "#00e74c",
195
+ End = "#fd7567",
196
+ Default = "#2196F3"
197
+ }
198
+ export type _360AssetsQueryParams = {
199
+ page: number;
200
+ limit: number;
201
+ projectID: string;
202
+ date: DateType;
203
+ floor: string;
204
+ id: string;
205
+ };
206
+ export type _360AssetsRequestPayload = {
207
+ projectId: string;
208
+ date: DateType;
209
+ floor: string;
210
+ uploadedBy?: string;
211
+ };
212
+ export type DrawingsRequestPayload = {
213
+ projectId?: string;
214
+ name?: string;
215
+ changedBy?: string;
216
+ mapStyle?: string;
217
+ startDate?: string;
218
+ endDate?: string;
219
+ id?: number;
220
+ page?: number;
221
+ limit?: number;
222
+ paginate?: boolean;
223
+ withAsset?: boolean;
224
+ };
225
+ export type GenerateFloorPayload = {
226
+ overlay?: {
227
+ url: string;
228
+ title: string;
229
+ fileExtension: string;
230
+ };
231
+ changedBy: string;
232
+ name?: string;
233
+ mapStyle?: string;
234
+ overlayPositionCorners: {
235
+ northEast: {
236
+ lat: number;
237
+ lng: number;
238
+ };
239
+ northWest: {
240
+ lat: number;
241
+ lng: number;
242
+ };
243
+ southWest: {
244
+ lat: number;
245
+ lng: number;
246
+ };
247
+ southEast: {
248
+ lat: number;
249
+ lng: number;
250
+ };
251
+ };
252
+ };
253
+ export type _360QueueQueryParams = {
254
+ projectId?: string;
255
+ };
256
+ export type _360AssetsUploadPayload = {
257
+ targetPointsCount: number;
258
+ assetType: string;
259
+ upload: {
260
+ url: string;
261
+ title: string;
262
+ fileExtension: string;
263
+ }[];
264
+ deviceSerial: string;
265
+ startPosition: string;
266
+ endPosition: string;
267
+ isTimelapse: boolean;
268
+ isImagesOnly: boolean;
269
+ };
270
+ export type Generate360MapRequestPayload = {
271
+ dateId: string;
272
+ floorId: string;
273
+ cameraOffset: string;
274
+ startPoint: string;
275
+ endPoint: string;
276
+ };
@@ -0,0 +1,143 @@
1
+ export type AconexUserProject = {
2
+ id: number;
3
+ name: string;
4
+ shortName: string;
5
+ startDate: string;
6
+ endDate: string;
7
+ active: boolean;
8
+ hidden: boolean;
9
+ };
10
+ export type AconexDocumentSchema = {
11
+ dataType: AconexDocumentDataType;
12
+ identifier: AconexIdentifiers;
13
+ fieldName: string;
14
+ modifiedFieldName?: string;
15
+ mandatoryStatus: AconexMandatoryStatus;
16
+ schemaValues?: Array<{
17
+ id: string;
18
+ value: string;
19
+ }>;
20
+ };
21
+ export type AconexDocumentTypeSchema = {
22
+ dataType: AconexDocumentDataType;
23
+ identifier: AconexIdentifiers;
24
+ fieldName: string;
25
+ modifiedFieldName?: string;
26
+ mandatoryStatus: AconexMandatoryStatus;
27
+ specifications?: Array<AconexFieldSpecification>;
28
+ };
29
+ export type AconexDocumentSchemaField = {
30
+ dataType: AconexDocumentDataType;
31
+ identifier: AconexIdentifiers;
32
+ schemaValues?: Array<{
33
+ id: string;
34
+ value: string;
35
+ }>;
36
+ fieldName: string;
37
+ modifiedFieldName?: string;
38
+ mandatoryStatus: AconexMandatoryStatus;
39
+ componentType?: AconexFormComponentType;
40
+ items?: Array<any>;
41
+ disabled?: boolean;
42
+ specifications?: Array<AconexFieldSpecification>;
43
+ };
44
+ export type AconexFormSchema = Record<AconexIdentifiers | string, AconexDocumentSchemaField>;
45
+ export type AconexFieldSpecification = {
46
+ name: string;
47
+ options: Array<string>;
48
+ };
49
+ export declare enum AconexDocumentDataType {
50
+ String = "STRING",
51
+ Boolean = "BOOLEAN",
52
+ Ratio = "RATIO",
53
+ Integer = "INTEGER",
54
+ Double = "DOUBLE",
55
+ Long = "LONG",
56
+ Date = "DATE",
57
+ Complex = "COMPLEX",
58
+ SingleLineText = "SINGLE_LINE_TEXT",
59
+ MultiLineText = "MULTI_LINE_TEXT",
60
+ SingleSelect = "SINGLE_SELECT",
61
+ MultiSelect = "MULTI_SELECT",
62
+ User = "USER",
63
+ Number = "NUMBER"
64
+ }
65
+ export declare enum AconexFormComponentType {
66
+ Select = "SelectField",
67
+ Text = "TextField",
68
+ DateTime = "DateTimeField",
69
+ Switch = "SwitchField"
70
+ }
71
+ export declare enum AconexMandatoryStatus {
72
+ Mandatory = "MANDATORY",
73
+ NotMandatory = "NOT_MANDATORY"
74
+ }
75
+ export type AconexAuthCallbackParams = {
76
+ code: string;
77
+ location: string;
78
+ };
79
+ export type AconexEditedImageUploadRequestPayload = {
80
+ projectExid: string;
81
+ snapshot: string;
82
+ };
83
+ export declare enum AconexIdentifiers {
84
+ DocumentNumber = "DocumentNumber",
85
+ DocumentTypeId = "DocumentTypeId",
86
+ Revision = "Revision",
87
+ HasFile = "HasFile",
88
+ AccessList = "AccessList",
89
+ AsBuiltRequired = "AsBuiltRequired",
90
+ Attribute1 = "Attribute1",
91
+ Attribute2 = "Attribute2",
92
+ Attribute3 = "Attribute3",
93
+ Attribute4 = "Attribute4",
94
+ Author = "Author",
95
+ AuthorisedBy = "AuthorisedBy",
96
+ Category = "Category",
97
+ Check1 = "Check1",
98
+ Check2 = "Check2",
99
+ Comments = "Comments",
100
+ Comments2 = "Comments2",
101
+ ContractNumber = "ContractNumber",
102
+ ContractDeliverable = "ContractDeliverable",
103
+ ContractorDocumentNumber = "ContractorDocumentNumber",
104
+ ContractorRev = "ContractorRev",
105
+ Date1 = "Date1",
106
+ Date2 = "Date2",
107
+ DateApproved = "DateApproved",
108
+ DateCreated = "DateCreated",
109
+ DateForReview = "DateForReview",
110
+ DateReviewed = "DateReviewed",
111
+ Discipline = "Discipline",
112
+ DocumentStatusId = "DocumentStatusId",
113
+ MilestoneDate = "MilestoneDate",
114
+ PackageNumber = "PackageNumber",
115
+ PercentageComplete = "PercentageComplete",
116
+ PlannedSubmissionDate = "PlannedSubmissionDate",
117
+ PrintSize = "PrintSize",
118
+ ProjectField1 = "ProjectField1",
119
+ ProjectField2 = "ProjectField2",
120
+ ProjectField3 = "ProjectField3",
121
+ Reference = "Reference",
122
+ RevisionDate = "RevisionDate",
123
+ Scale = "Scale",
124
+ SelectList1 = "SelectList1",
125
+ SelectList2 = "SelectList2",
126
+ SelectList3 = "SelectList3",
127
+ SelectList4 = "SelectList4",
128
+ SelectList5 = "SelectList5",
129
+ SelectList6 = "SelectList6",
130
+ SelectList7 = "SelectList7",
131
+ SelectList8 = "SelectList8",
132
+ SelectList9 = "SelectList9",
133
+ SelectList10 = "SelectList10",
134
+ TagNumber = "TagNumber",
135
+ Title = "Title",
136
+ ToClientDate = "ToClientDate",
137
+ UploadDate = "UploadDate",
138
+ UploadedBy = "UploadedBy",
139
+ Vdrcode = "Vdrcode",
140
+ VendorDocumentNumber = "VendorDocumentNumber",
141
+ VendorRev = "VendorRev",
142
+ AutoNumber = "AutoNumber"
143
+ }
@@ -0,0 +1,51 @@
1
+ import type { JsonObject } from "@evercam/api/types";
2
+ export type WithZohoParams = {
3
+ with_zoho?: boolean;
4
+ };
5
+ export type AdminSearchProjectItem = {
6
+ id: number;
7
+ name: string;
8
+ status: string;
9
+ exid: string;
10
+ featureFlags: string[];
11
+ };
12
+ export type AdminSearchItem = AdminSearchProjectItem | JsonObject;
13
+ export type AdminInviteRole = {
14
+ id: number;
15
+ name: string;
16
+ resourceType: string;
17
+ };
18
+ export type AdminInviteAssigner = {
19
+ id: number;
20
+ email: string;
21
+ fullname: string;
22
+ };
23
+ export type AdminInviteAuthContextSubRole = {
24
+ resourceId: string;
25
+ roleId: number;
26
+ };
27
+ export type AdminInviteAuthContext = {
28
+ permissions: string[] | null;
29
+ subRoles: AdminInviteAuthContextSubRole[];
30
+ hasOverride: boolean;
31
+ };
32
+ export type AdminInvite = {
33
+ id: number;
34
+ message: string | null;
35
+ status: number;
36
+ email: string;
37
+ key: string;
38
+ updatedAt: string;
39
+ role: AdminInviteRole;
40
+ createdAt: string;
41
+ resourceId: string;
42
+ assigner: AdminInviteAssigner;
43
+ sentCount: number;
44
+ lastSentAt: string;
45
+ authContext: AdminInviteAuthContext;
46
+ statusName: string;
47
+ };
48
+ export type ZohoDeskTicketSearchResponse = {
49
+ data: JsonObject[];
50
+ count: number;
51
+ };