@evercam/api 1.0.0-95f567c5f → 1.0.0-964e29308

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.
@@ -0,0 +1,62 @@
1
+ export type OAuthClient = {
2
+ id: number;
3
+ name: string;
4
+ clientId: string;
5
+ redirectUris: string[];
6
+ logoUrl: string | null;
7
+ scopes: string[];
8
+ active: boolean;
9
+ description: string | null;
10
+ owner: {
11
+ id: number;
12
+ name: string;
13
+ email: string;
14
+ } | null;
15
+ createdAt: string;
16
+ updatedAt: string;
17
+ };
18
+ export type OAuthClientWithSecret = OAuthClient & {
19
+ clientSecret: string;
20
+ };
21
+ export type CreateOAuthClientPayload = {
22
+ name: string;
23
+ redirectUris: string[];
24
+ scopes?: string[];
25
+ description?: string;
26
+ logoUrl?: string;
27
+ };
28
+ export type AdminCreateOAuthClientPayload = CreateOAuthClientPayload & {
29
+ clientId?: string;
30
+ clientSecret?: string;
31
+ };
32
+ export type UpdateOAuthClientPayload = {
33
+ name?: string;
34
+ redirectUris?: string[];
35
+ scopes?: string[];
36
+ description?: string;
37
+ logoUrl?: string;
38
+ active?: boolean;
39
+ };
40
+ export type OAuthScopeDetail = {
41
+ scope: string;
42
+ description: string;
43
+ group: string;
44
+ };
45
+ export type OAuthConsentInfo = {
46
+ client: {
47
+ name: string;
48
+ logoUrl: string | null;
49
+ description: string | null;
50
+ };
51
+ scopes: OAuthScopeDetail[];
52
+ };
53
+ export type OAuthConsentPayload = {
54
+ clientId: string;
55
+ scope: string;
56
+ redirectUri: string;
57
+ state: string;
58
+ decision: "allow" | "deny";
59
+ };
60
+ export type OAuthConsentResponse = {
61
+ redirectUrl: string;
62
+ };
@@ -1,3 +1,17 @@
1
+ export type Coordinate = [number, number];
2
+ export type PolygonPath = Coordinate[];
3
+ export type PolygonCoordinates = PolygonPath[];
4
+ export interface GeoJSONPolygon {
5
+ type: "Polygon";
6
+ coordinates: PolygonCoordinates;
7
+ }
8
+ export declare enum PlannerUrlParams {
9
+ SitePlanId = "site_plan_id",
10
+ IsNewSitePlan = "is_new_site_plan",
11
+ IsBoundsMode = "is_bounds_mode",
12
+ ProjectPosition = "project_position",
13
+ DealId = "deal_id"
14
+ }
1
15
  export declare enum EDistortImageModes {
2
16
  FreeRotate = "freeRotate",
3
17
  Lock = "lock",
@@ -33,3 +47,33 @@ export declare enum ERoles {
33
47
  Admin = "admin",
34
48
  User = "user"
35
49
  }
50
+ export interface IDrawControl {
51
+ _toolbars: {
52
+ draw: {
53
+ _activeMode: {
54
+ handler: {
55
+ disable(): void;
56
+ completeShape(): void;
57
+ };
58
+ };
59
+ _modes: {
60
+ polygon: {
61
+ handler: {
62
+ enable(): void;
63
+ };
64
+ };
65
+ };
66
+ };
67
+ edit: {
68
+ _modes: {
69
+ edit: {
70
+ handler: {
71
+ enable(): void;
72
+ disable(): void;
73
+ save(): void;
74
+ };
75
+ };
76
+ };
77
+ };
78
+ };
79
+ }
@@ -91,8 +91,7 @@ export declare enum ProjectFeatureFlag {
91
91
  DefaultToProjectApp = "default_to_project_app",
92
92
  SmartSearch = "smart_search",
93
93
  PpeMonitoring = "ppe_monitoring",
94
- NoGdpr = "no_gdpr",
95
- NoLiveView = "no_live_view"
94
+ NoGdpr = "no_gdpr"
96
95
  }
97
96
  export type ProjectBatteryReading = {
98
97
  exid: number;
@@ -164,6 +163,7 @@ export type ProjectRole = {
164
163
  };
165
164
  export type ProjectMember = {
166
165
  id: string;
166
+ key?: string;
167
167
  email: string;
168
168
  fullname: string;
169
169
  lastSeenAt?: string;
@@ -173,7 +173,9 @@ export type ProjectMember = {
173
173
  resourceId: string;
174
174
  roleId: number;
175
175
  }>;
176
- company?: string | null;
176
+ company?: {
177
+ name: string;
178
+ } | null;
177
179
  };
178
180
  export type ProjectInvite = {
179
181
  id?: string;
@@ -194,6 +196,7 @@ export type ProjectMembersResponsePayload = {
194
196
  export type ProjectMembersRequestPayload = {
195
197
  roleId: number;
196
198
  emails: string[];
199
+ message?: string;
197
200
  overrideRole?: Partial<{
198
201
  permissions?: string[];
199
202
  subRoles?: Array<{
@@ -0,0 +1,53 @@
1
+ export type RingDevice = {
2
+ deviceId: string;
3
+ name: string;
4
+ deviceType: string;
5
+ firmwareVersion: string | null;
6
+ batteryLife: number | null;
7
+ location: string | null;
8
+ imported: boolean;
9
+ cameraExid?: string;
10
+ projectExid?: string;
11
+ projectName?: string;
12
+ };
13
+ export type RingDevicesResponsePayload = {
14
+ devices: RingDevice[];
15
+ };
16
+ export type RingImportDevicesPayload = {
17
+ deviceIds: string[];
18
+ projectExid: string;
19
+ deviceNames?: Record<string, string>;
20
+ };
21
+ export type RingImportResponsePayload = {
22
+ cameras: Array<{
23
+ exid: string;
24
+ name: string;
25
+ }>;
26
+ project: {
27
+ exid: string;
28
+ name: string;
29
+ };
30
+ };
31
+ export type RingMoveDevicePayload = {
32
+ projectExid: string;
33
+ };
34
+ export type RingMoveDeviceResponsePayload = {
35
+ status: string;
36
+ cameraExid: string;
37
+ projectExid: string;
38
+ };
39
+ export type RingLiveViewPayload = {
40
+ sdpOffer: string;
41
+ };
42
+ export type RingLiveViewResponse = {
43
+ sdpAnswer: string;
44
+ sessionUrl: string;
45
+ iceServers: Array<{
46
+ urls: string;
47
+ username?: string;
48
+ credential?: string;
49
+ }>;
50
+ };
51
+ export type RingStopLiveViewResponse = {
52
+ status: string;
53
+ };
@@ -48,12 +48,44 @@ export type DeleteSnapshotQueryParams = {
48
48
  adminEmail: string;
49
49
  adminFullname: string;
50
50
  };
51
- export type TransferCloudRecordingsQueryParams = {
51
+ export type SnapshotTransfer = {
52
+ id: number;
53
+ sourceCamera: SnapshotTransferCamera;
54
+ targetCamera: SnapshotTransferCamera;
55
+ fromDate: DateType;
56
+ toDate: DateType;
57
+ overwriteExisting?: boolean | null;
58
+ deleteSource?: boolean | null;
59
+ requestor: SnapshotTransferRequestor;
60
+ status: SnapshotTransferStatus;
61
+ insertedAt: DateType;
62
+ attempts?: number | null;
63
+ errorMessage?: string | null;
64
+ snapshotsTransferred?: number | null;
65
+ };
66
+ export type SnapshotTransferCamera = {
67
+ id: number;
68
+ exid: CameraExid;
69
+ name: string;
70
+ };
71
+ export type SnapshotTransferRequestor = {
72
+ email: string;
73
+ firstname: string;
74
+ lastname: string;
75
+ };
76
+ export declare enum SnapshotTransferStatus {
77
+ Completed = "completed",
78
+ Failed = "failed",
79
+ Processing = "processing",
80
+ Pending = "pending",
81
+ Cancelled = "cancelled"
82
+ }
83
+ export type TransferCloudRecordingsQueryParams = PaginationParams & {
52
84
  targetCameraExid: CameraExid;
53
85
  fromDate: DateType;
54
86
  toDate: DateType;
55
- overwriteExistingSnapshots?: boolean;
56
- keepSourceSnapshots?: boolean;
87
+ overwriteExisting?: boolean;
88
+ deleteSource?: boolean;
57
89
  adminEmail?: string;
58
90
  adminFullname?: string;
59
91
  };
@@ -0,0 +1,19 @@
1
+ import type { DateType } from "@evercam/api/types";
2
+ export type StorageProvider = {
3
+ id?: number;
4
+ cameraId: number;
5
+ type: string;
6
+ provider: string;
7
+ url: string;
8
+ startDate: DateType;
9
+ endDate: DateType;
10
+ config: Record<string, any>;
11
+ insertedAt?: DateType;
12
+ };
13
+ export type StorageProvidersResponsePayload = {
14
+ providers: StorageProvider[];
15
+ };
16
+ export declare enum ProjectStorageProvider {
17
+ Seaweedfs = "seaweedfs",
18
+ S3 = "s3"
19
+ }
@@ -7,7 +7,8 @@ export declare enum TimelapseStatus {
7
7
  export declare enum TimelapseDuration {
8
8
  ThirtySeconds = 30,
9
9
  SixtySeconds = 60,
10
- NintySeconds = 90
10
+ NintySeconds = 90,
11
+ TwoMinutes = 120
11
12
  }
12
13
  export type TimelapseVideoOptions = {
13
14
  width?: number;
@@ -55,7 +55,6 @@ export declare enum UserFeatureFlag {
55
55
  CompanyAdmin = "company-admin",
56
56
  VideoWalls = "video-walls",
57
57
  MassCameraSharing = "mass-camera-sharing",
58
- Copilot = "copilot",
59
58
  ProjectSharing = "project-sharing"
60
59
  }
61
60
  export type ProjectUser = User & {