@veltdev/sdk 4.5.0-beta.9 → 4.5.0

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 (37) hide show
  1. package/app/client/snippyly.model.d.ts +62 -8
  2. package/app/models/data/button.data.model.d.ts +2 -0
  3. package/app/models/data/comment-actions.data.model.d.ts +3 -0
  4. package/app/models/data/comment-annotation.data.model.d.ts +10 -0
  5. package/app/models/data/comment-resolver.data.model.d.ts +19 -0
  6. package/app/models/data/comment-sidebar-config.model.d.ts +21 -0
  7. package/app/models/data/comment.data.model.d.ts +1 -0
  8. package/app/models/data/core-events.data.model.d.ts +9 -0
  9. package/app/models/data/crdt.data.model.d.ts +59 -0
  10. package/app/models/data/custom-filter.data.model.d.ts +8 -0
  11. package/app/models/data/document-paths.data.model.d.ts +13 -0
  12. package/app/models/data/document.data.model.d.ts +2 -0
  13. package/app/models/data/encryption-provider.data.model.d.ts +12 -0
  14. package/app/models/data/location.model.d.ts +10 -0
  15. package/app/models/data/media-preview-config.data.model.d.ts +2 -0
  16. package/app/models/data/multi-thread.data.model.d.ts +2 -0
  17. package/app/models/data/notification.model.d.ts +23 -1
  18. package/app/models/data/notifications-events.data.model.d.ts +9 -0
  19. package/app/models/data/reaction-resolver.data.model.d.ts +4 -2
  20. package/app/models/data/recorder-annotation.data.model.d.ts +3 -0
  21. package/app/models/data/recorder-events.data.model.d.ts +19 -0
  22. package/app/models/data/recorder.model.d.ts +4 -0
  23. package/app/models/data/resolver.data.model.d.ts +7 -0
  24. package/app/models/data/user-iam.data.model.d.ts +6 -0
  25. package/app/models/data/user-resolver.data.model.d.ts +2 -0
  26. package/app/models/data/user.data.model.d.ts +10 -0
  27. package/app/models/element/comment-element.model.d.ts +136 -11
  28. package/app/models/element/crdt-element.model.d.ts +166 -0
  29. package/app/models/element/notification-element.model.d.ts +103 -3
  30. package/app/models/element/presence-element.model.d.ts +2 -0
  31. package/app/models/element/recorder-element.model.d.ts +82 -2
  32. package/app/utils/constants.d.ts +45 -1
  33. package/app/utils/enums.d.ts +20 -1
  34. package/models.d.ts +3 -0
  35. package/package.json +1 -1
  36. package/types.d.ts +1 -0
  37. package/velt.js +116 -105
@@ -3,7 +3,7 @@ import { Observable } from "rxjs";
3
3
  import { Config, DisableLogsConfig } from "../models/data/config.data.model";
4
4
  import { DocumentUser } from "../models/data/document-user.data.model";
5
5
  import { Location } from "../models/data/location.model";
6
- import { User, UserOptions } from "../models/data/user.data.model";
6
+ import { User, UserOptions, VeltAuthProvider } from "../models/data/user.data.model";
7
7
  import { CustomCss } from "../models/data/custom-css.data.model";
8
8
  import { AreaElement } from "../models/element/area-element.model";
9
9
  import { ArrowElement } from "../models/element/arrow-element.model";
@@ -24,18 +24,22 @@ import { FeatureType } from "../utils/enums";
24
24
  import { UserContact } from "../models/data/user-contact.data.model";
25
25
  import { DocumentMetadata } from "../models/data/document-metadata.model";
26
26
  import { ReactionElement } from "../models/element/reaction-element.model";
27
+ import { CrdtElement } from "../models/element/crdt-element.model";
27
28
  import { VeltEventMetadata } from "../models/data/event-metadata.data.model";
28
29
  import { CoreEventTypesMap } from "../models/data/core-events.data.model";
29
30
  import { Document, SetDocumentsRequestOptions, FetchDocumentsRequest, FetchFoldersRequest, UpdateDocumentsRequest, UpdateLocationsRequest } from "../models/data/document.data.model";
30
31
  import { FetchDocumentsResponse, FetchFoldersResponse } from "../models/data/document-events.data.model";
31
32
  import { UserDataProvider } from "../models/data/user-resolver.data.model";
32
33
  import { VeltDataProvider } from "../models/data/provider.data.model";
34
+ import { VeltEncryptionProvider } from "../models/data/encryption-provider.data.model";
33
35
  import { VeltResetButtonStateConfig } from "../models/data/button.data.model";
36
+ import { SetLocationsRequestOptions } from "../models/data/location.model";
34
37
 
35
38
  export declare class Snippyly {
36
39
  constructor();
37
40
  initConfig: (apiKey: string, config?: Config) => void;
38
41
  identify: (user: User, userOptions?: UserOptions) => Promise<unknown>;
42
+ setVeltAuthProvider: (veltAuthProvider: VeltAuthProvider) => Promise<User | null>;
39
43
  /**
40
44
  * Tell us who the currently logged in user is.
41
45
  *
@@ -48,17 +52,22 @@ export declare class Snippyly {
48
52
  * @param id unique document ID
49
53
  * @param documentMetadata Document Metadata
50
54
  */
51
- setDocument: (id: string, documentMetadata?: DocumentMetadata) => void;
55
+ setDocument: (id: string, documentMetadata?: DocumentMetadata) => Promise<void>;
52
56
  /**
53
57
  * Tell us the unique ID of the current document/resource on which you want to enable collaboration.
54
58
  * @param id unique document ID
55
59
  * @deprecated This method is deprecated. Use `setDocuments` method instead.
56
60
  */
57
- setDocumentId: (id: string) => void;
61
+ setDocumentId: (id: string) => Promise<void>;
58
62
  /**
59
63
  * To set multiple documents
60
64
  */
61
- setDocuments: (documents: Document[], options?: SetDocumentsRequestOptions) => void;
65
+ setDocuments: (documents: Document[], options?: SetDocumentsRequestOptions) => Promise<void>;
66
+ /**
67
+ * To set the root document
68
+ * @param document Document object
69
+ */
70
+ setRootDocument: (document: Document) => Promise<void>;
62
71
  /**
63
72
  * To unset the document id
64
73
  * @deprecated This method is deprecated. Use `unsetDocuments` method instead.
@@ -91,6 +100,10 @@ export declare class Snippyly {
91
100
  * To set the data provider.
92
101
  */
93
102
  setDataProviders: (dataProvider: VeltDataProvider) => void;
103
+ /**
104
+ * To set the encryption provider.
105
+ */
106
+ setEncryptionProvider: (encryptionProvider: VeltEncryptionProvider) => void;
94
107
  /**
95
108
  * Get Document ID
96
109
  */
@@ -100,12 +113,39 @@ export declare class Snippyly {
100
113
  * @param params Location
101
114
  * @param appendLocation Append location to existing location
102
115
  */
103
- setLocation: (params: Location, appendLocation?: boolean) => void;
116
+ setLocation: (params: Location, appendLocation?: boolean) => Promise<void>;
117
+
118
+ /**
119
+ * To set the root location
120
+ * @param location Location object
121
+ */
122
+ setRootLocation: (location: Location) => Promise<void>;
123
+
124
+ /**
125
+ * To set multiple locations
126
+ * @param locations Location objects
127
+ * @param options Set locations options
128
+ */
129
+ setLocations: (locations: Location[], options?: SetLocationsRequestOptions) => Promise<void>;
130
+
104
131
  /**
105
132
  * To remove location from a User
106
133
  * @param location Location
107
134
  */
108
135
  removeLocation: (location?: Location) => void;
136
+
137
+ /**
138
+ * To remove multiple locations
139
+ * @param locations Location objects
140
+ */
141
+ removeLocations: (locations?: Location[]) => void;
142
+
143
+ /**
144
+ * To remove location ids
145
+ * @param locationIds Location ids
146
+ */
147
+ unsetLocationIds: (locationIds?: string[]) => void;
148
+
109
149
  /**
110
150
  * To exclude data of specific location ids
111
151
  * @param ids Location Ids
@@ -192,6 +232,10 @@ export declare class Snippyly {
192
232
  * Get the Area Object.
193
233
  */
194
234
  getReactionElement: () => ReactionElement;
235
+ /**
236
+ * Get the CRDT Element Object.
237
+ */
238
+ getCrdtElement: () => CrdtElement;
195
239
  /**
196
240
  * Get the metadata of the current resource.
197
241
  */
@@ -211,7 +255,7 @@ export declare class Snippyly {
211
255
  * @param location Location object
212
256
  * @deprecated This method is deprecated and will be removed in next release. Use `setLocation` method with `appendLocation: true` instead.
213
257
  */
214
- addLocation: (location: any) => any;
258
+ addLocation: (location: any) => Promise<any>;
215
259
  /**
216
260
  * To set the dark mode of Velt components.
217
261
  * @param value {boolean} true/false
@@ -312,8 +356,18 @@ export declare class Snippyly {
312
356
  */
313
357
  disableLogs: (config?: DisableLogsConfig) => void;
314
358
 
359
+ /**
360
+ * To enable safe eval.
361
+ */
362
+ enableSafeEval: () => void;
363
+
364
+ /**
365
+ * To disable safe eval.
366
+ */
367
+ disableSafeEval: () => void;
368
+
315
369
  /**
316
370
  * To reset the button toggle map.
317
371
  */
318
- resetVeltButtonState: (config?: VeltResetButtonStateConfig) => void;
319
- }
372
+ resetVeltButtonState: (config?: VeltResetButtonStateConfig) => void;
373
+ }
@@ -1,11 +1,13 @@
1
1
  import { CommentAnnotation } from "./comment-annotation.data.model";
2
2
  import { UnreadCommentsMap } from "./comment-utils.data.model";
3
3
  import { Comment } from "./comment.data.model";
4
+ import { CustomFilters } from "./custom-filter.data.model";
4
5
  import { VeltEventMetadata } from "./event-metadata.data.model";
5
6
  import { Notification } from "./notification.model";
6
7
  export interface VeltButtonClickEvent extends VeltButtonData {
7
8
  buttonContext?: VeltButtonContext;
8
9
  metadata?: VeltEventMetadata;
10
+ customFilters?: CustomFilters;
9
11
  }
10
12
  export interface VeltButtonContext {
11
13
  type?: string;
@@ -62,12 +62,15 @@ export interface DeleteCommentAnnotationRequest {
62
62
  options?: RequestOptions;
63
63
  }
64
64
  export interface CommentRequestQuery {
65
+ organizationId?: string;
65
66
  documentIds?: string[];
66
67
  locationIds?: string[];
67
68
  statusIds?: string[];
68
69
  folderId?: string;
69
70
  allDocuments?: boolean;
70
71
  locationId?: string;
72
+ aggregateDocuments?: boolean;
73
+ filterGhostComments?: boolean;
71
74
  }
72
75
  export interface SubscribeCommentAnnotationRequest {
73
76
  annotationId: string;
@@ -9,6 +9,7 @@ import { PageInfo } from "./page-info.model";
9
9
  import { TargetElement } from "./target-element.data.model";
10
10
  import { TargetTextRange } from "./target-text-range.data.model";
11
11
  import { User } from "./user.data.model";
12
+ import { CommentAnnotationViews } from "./views.data.model";
12
13
  export declare class CommentAnnotation {
13
14
  /**
14
15
  * Unique identifier for the comment pin annotation.
@@ -164,6 +165,10 @@ export declare class CommentAnnotation {
164
165
  * Custom context data provided by the user
165
166
  */
166
167
  context?: any;
168
+ /**
169
+ * Context id generated from context data
170
+ */
171
+ contextId?: string;
167
172
  iam: CommentIAMConfig;
168
173
  isPageAnnotation?: boolean;
169
174
  targetInlineCommentElementId?: string;
@@ -176,6 +181,8 @@ export declare class CommentAnnotation {
176
181
  multiThreadAnnotationId?: string;
177
182
  isDraft?: boolean;
178
183
  sourceId?: string;
184
+ views?: CommentAnnotationViews;
185
+ viewedByUserIds?: string[];
179
186
  }
180
187
  export declare class GhostComment {
181
188
  targetElement?: TargetElement | null;
@@ -244,3 +251,6 @@ export declare class CommentAnnotationSubscribedGroups {
244
251
  export declare class UpdateContextConfig {
245
252
  merge?: boolean;
246
253
  }
254
+ export interface ContextOptions {
255
+ partialMatch?: boolean;
256
+ }
@@ -29,6 +29,14 @@ export interface SaveCommentResolverRequest {
29
29
  metadata?: BaseMetadata;
30
30
  commentId?: string;
31
31
  }
32
+ export interface PartialUser {
33
+ userId: string;
34
+ }
35
+ export interface PartialTaggedUserContacts {
36
+ userId: string;
37
+ contact?: PartialUser;
38
+ text?: string;
39
+ }
32
40
  export interface PartialComment {
33
41
  commentId: string | number;
34
42
  commentHtml?: string;
@@ -36,6 +44,9 @@ export interface PartialComment {
36
44
  attachments?: {
37
45
  [attachmentId: number]: PartialAttachment;
38
46
  };
47
+ from?: PartialUser;
48
+ to?: PartialUser[];
49
+ taggedUserContacts?: PartialTaggedUserContacts[];
39
50
  }
40
51
  export interface PartialCommentAnnotationResult {
41
52
  strippedData: {
@@ -44,10 +55,18 @@ export interface PartialCommentAnnotationResult {
44
55
  originalData: CommentAnnotation | null;
45
56
  eventType?: ResolverActions;
46
57
  }
58
+ export interface PartialTargetTextRange {
59
+ text: string;
60
+ }
47
61
  export interface PartialCommentAnnotation {
48
62
  annotationId: string;
49
63
  metadata?: BaseMetadata;
50
64
  comments: {
51
65
  [commentId: string]: PartialComment;
52
66
  };
67
+ from?: PartialUser;
68
+ assignedTo?: PartialUser;
69
+ targetTextRange?: PartialTargetTextRange;
70
+ resolvedByUserId?: string | null;
71
+ [key: string]: any;
53
72
  }
@@ -1,12 +1,21 @@
1
1
  import { CommentAnnotation } from "./comment-annotation.data.model";
2
2
  import { UnreadCommentsMap } from "./comment-utils.data.model";
3
+ import { CustomFilters } from "./custom-filter.data.model";
3
4
  import { Location } from "./location.model";
5
+ declare class FilterOption {
6
+ id: string;
7
+ name: string;
8
+ }
4
9
  declare class FilterTypeConfig {
5
10
  name?: string;
6
11
  enable?: boolean;
7
12
  multiSelection?: boolean;
8
13
  enableGrouping?: boolean;
9
14
  order?: string[];
15
+ placeholder?: string;
16
+ id?: string;
17
+ type?: 'custom' | 'system';
18
+ options?: FilterOption[];
10
19
  }
11
20
  export declare class CommentSidebarFilterConfig {
12
21
  location?: FilterTypeConfig;
@@ -14,11 +23,13 @@ export declare class CommentSidebarFilterConfig {
14
23
  people?: FilterTypeConfig;
15
24
  assigned?: FilterTypeConfig;
16
25
  tagged?: FilterTypeConfig;
26
+ involved?: FilterTypeConfig;
17
27
  priority?: FilterTypeConfig;
18
28
  status?: FilterTypeConfig;
19
29
  category?: FilterTypeConfig;
20
30
  commentType?: FilterTypeConfig;
21
31
  version?: FilterTypeConfig;
32
+ [key: string]: FilterTypeConfig | undefined;
22
33
  }
23
34
  export declare class CommentSidebarGroupConfig {
24
35
  enable?: boolean;
@@ -45,6 +56,11 @@ export declare class CommentSidebarFilters {
45
56
  email?: string;
46
57
  name?: string;
47
58
  }[];
59
+ involved?: {
60
+ userId?: string;
61
+ email?: string;
62
+ name?: string;
63
+ }[];
48
64
  priority?: string[];
49
65
  status?: string[];
50
66
  category?: string[];
@@ -52,6 +68,10 @@ export declare class CommentSidebarFilters {
52
68
  id: string;
53
69
  name?: string;
54
70
  }[];
71
+ [key: string]: {
72
+ id?: string;
73
+ name?: string;
74
+ }[] | string[] | undefined;
55
75
  }
56
76
  export interface CommentSidebarCustomActionsState {
57
77
  [key: string]: boolean;
@@ -61,6 +81,7 @@ export interface CommentSidebarCustomActionEventData {
61
81
  data: CommentAnnotation[];
62
82
  unreadDataMap: UnreadCommentsMap;
63
83
  systemFilteredData: CommentAnnotation[];
84
+ customFilters: CustomFilters;
64
85
  }
65
86
  export declare class CommentSidebarData {
66
87
  groupId?: string;
@@ -9,6 +9,7 @@ export declare class Comment {
9
9
  * Auto generated.
10
10
  */
11
11
  commentId: number;
12
+ context?: any;
12
13
  /**
13
14
  * This determines the comment content type.
14
15
  *
@@ -6,10 +6,19 @@ export type CoreEventTypesMap = {
6
6
  [CoreEventTypes.USER_UPDATE]: UserUpdateEvent;
7
7
  [CoreEventTypes.DOCUMENT_INIT]: DocumentInitEvent;
8
8
  [CoreEventTypes.ERROR]: ErrorEvent;
9
+ [CoreEventTypes.INIT_UPDATE]: InitUpdateEvent;
9
10
  };
10
11
  export type UserUpdateEvent = User | null;
11
12
  export type DocumentInitEvent = boolean | undefined;
12
13
  export type ErrorEvent = {
14
+ error?: string;
13
15
  code: string;
14
16
  message?: string;
17
+ source?: string;
18
+ };
19
+ export type InitUpdateEvent = {
20
+ event: string;
21
+ methodName?: string;
22
+ source?: string;
23
+ payload?: any;
15
24
  };
@@ -0,0 +1,59 @@
1
+ export interface CrdtVersion {
2
+ versionId: string;
3
+ versionName?: string;
4
+ state: Uint8Array | number[];
5
+ timestamp: number;
6
+ }
7
+ export interface CrdtVersionWithEncryptedState extends Omit<CrdtVersion, 'state'> {
8
+ encryptedState: string;
9
+ }
10
+ export interface CrdtUpdateDataQuery {
11
+ id: string;
12
+ state: Uint8Array | number[];
13
+ }
14
+ export interface CrdtOnDataChangeQuery {
15
+ id: string;
16
+ callback: (data: any) => void;
17
+ }
18
+ export interface CrdtGetDataQuery {
19
+ id: string;
20
+ }
21
+ export interface CrdtOnStateChangeQuery {
22
+ id: string;
23
+ callback: (data: any) => void;
24
+ }
25
+ export interface CrdtUpdateStateQuery {
26
+ id: string;
27
+ state: Uint8Array | number[];
28
+ }
29
+ export interface CrdtRegisterSyncUserQuery {
30
+ id: string;
31
+ }
32
+ export interface CrdtOnRegisteredUserChangeQuery {
33
+ id: string;
34
+ callback: (data: any) => void;
35
+ }
36
+ export interface CrdtSetPresenceQuery {
37
+ id: string;
38
+ }
39
+ export interface CrdtOnPresenceChangeQuery {
40
+ id: string;
41
+ callback: (data: any) => void;
42
+ }
43
+ export interface CrdtSaveVersionQuery {
44
+ id: string;
45
+ versionId: string;
46
+ versionName?: string;
47
+ state: Uint8Array | number[];
48
+ }
49
+ export interface CrdtGetVersionQuery {
50
+ id: string;
51
+ versionId: string;
52
+ }
53
+ export interface CrdtGetVersionsQuery {
54
+ id: string;
55
+ }
56
+ export interface CrdtDeleteVersionQuery {
57
+ id: string;
58
+ versionId: string;
59
+ }
@@ -13,6 +13,14 @@ export interface CustomStatus extends CustomFilter {
13
13
  svg?: string;
14
14
  iconUrl?: string;
15
15
  }
16
+ export interface CustomFilterOption {
17
+ id: string;
18
+ name: string;
19
+ selected: boolean;
20
+ }
21
+ export interface CustomFilters {
22
+ [key: string]: CustomFilterOption[];
23
+ }
16
24
  export interface CustomCategory extends CustomFilter {
17
25
  }
18
26
  export interface CustomCategoryMap {
@@ -3,10 +3,19 @@ export declare class DocumentPaths {
3
3
  * The document's unique identifier.
4
4
  */
5
5
  documentId?: string;
6
+ folderId?: string;
7
+ locationId?: string;
8
+ allDocuments?: boolean;
9
+ veltFolderId?: string;
10
+ folder?: string;
6
11
  /**
7
12
  * Presence path.
8
13
  */
9
14
  presence?: string;
15
+ /**
16
+ * User config path.
17
+ */
18
+ userConfig?: string;
10
19
  docs?: string;
11
20
  /**
12
21
  * Cursor path.
@@ -64,6 +73,10 @@ export declare class DocumentPaths {
64
73
  * User login path.
65
74
  */
66
75
  logins?: string;
76
+ /**
77
+ * CRDT path.
78
+ */
79
+ crdt?: string;
67
80
  /**
68
81
  * Selection path.
69
82
  */
@@ -8,9 +8,11 @@ export interface SetDocumentsRequestOptions {
8
8
  folderId?: string;
9
9
  allDocuments?: boolean;
10
10
  locationId?: string;
11
+ rootDocumentId?: string;
11
12
  }
12
13
  export interface UpdateDocumentsRequest<T = unknown> {
13
14
  organizationId?: string;
15
+ folderId?: string;
14
16
  documents?: UpdateDocumentMetadata<T>[];
15
17
  }
16
18
  export interface UpdateDocumentMetadata<T = unknown> {
@@ -0,0 +1,12 @@
1
+ export interface EncryptConfig<T = any> {
2
+ data: T;
3
+ type?: string;
4
+ }
5
+ export interface DecryptConfig<R = any> {
6
+ data: R;
7
+ type?: string;
8
+ }
9
+ export interface VeltEncryptionProvider<T = any, R = any> {
10
+ encrypt: (config: EncryptConfig<T>) => Promise<R>;
11
+ decrypt: (config: DecryptConfig<R>) => Promise<T>;
12
+ }
@@ -23,3 +23,13 @@ export declare class Version {
23
23
  */
24
24
  name: string;
25
25
  }
26
+ export declare class SetLocationsRequestOptions {
27
+ /**
28
+ * Root location.
29
+ */
30
+ rootLocationId?: string;
31
+ /**
32
+ * Merge locations.
33
+ */
34
+ appendLocation?: boolean;
35
+ }
@@ -2,11 +2,13 @@ export declare class MediaPreviewConfig {
2
2
  audio?: {
3
3
  enabled?: boolean;
4
4
  deviceId?: string;
5
+ stream?: MediaStream;
5
6
  };
6
7
  video?: {
7
8
  enabled?: boolean;
8
9
  deviceId?: string;
9
10
  track?: MediaStreamTrack;
11
+ stream?: MediaStream;
10
12
  };
11
13
  screen?: {
12
14
  enabled?: boolean;
@@ -55,6 +55,8 @@ export declare class MultiThreadCommentAnnotation {
55
55
  isDraft?: boolean;
56
56
  sourceId?: string;
57
57
  metadata?: MultiThreadMetadata;
58
+ isTemporary?: boolean;
59
+ context?: any;
58
60
  }
59
61
  export declare class MultiThreadMetadata extends BaseMetadata {
60
62
  [key: string]: any;
@@ -1,4 +1,4 @@
1
- import { AreaStatus, ArrowStatus, CommentStatus, HuddleActionTypes, NotificationSource, TagStatus, UserActionTypes } from "../../utils/enums";
1
+ import { AreaStatus, ArrowStatus, CommentStatus, HuddleActionTypes, NotificationSettingsItemType, NotificationSource, TagStatus, UserActionTypes } from "../../utils/enums";
2
2
  import { DocumentMetadata } from "./document-metadata.model";
3
3
  import { DocumentUser } from "./document-user.data.model";
4
4
  import { Location } from "./location.model";
@@ -230,3 +230,25 @@ export declare class NotificationTabConfig {
230
230
  all?: NotificationTabConfigItem;
231
231
  people?: NotificationTabConfigItem;
232
232
  }
233
+ export declare class NotificationInitialSettingsConfig {
234
+ name?: string;
235
+ id: string;
236
+ default?: string;
237
+ enable?: boolean;
238
+ values?: NotificationConfigValue[];
239
+ }
240
+ export declare class NotificationConfigValue {
241
+ name?: string;
242
+ id: NotificationSettingsItemType;
243
+ }
244
+ export declare class NotificationSettingsConfig {
245
+ [key: string]: NotificationSettingsItemType;
246
+ }
247
+ export interface NotificationsDocConfig {
248
+ inbox: 'ALL' | 'NONE' | 'MINE';
249
+ email: 'ALL' | 'NONE' | 'MINE';
250
+ [key: string]: string;
251
+ }
252
+ export interface GetNotificationsDataQuery {
253
+ type?: 'all' | 'forYou' | 'documents';
254
+ }
@@ -0,0 +1,9 @@
1
+ import { NotificationSettingsConfig } from "./notification.model";
2
+ import { NotificationEventTypes } from "../../utils/enums";
3
+ export interface SettingsUpdatedEvent {
4
+ settings: NotificationSettingsConfig;
5
+ isMutedAll: boolean;
6
+ }
7
+ export type NotificationEventTypesMap = {
8
+ [NotificationEventTypes.SETTINGS_UPDATED]: SettingsUpdatedEvent;
9
+ };
@@ -1,7 +1,8 @@
1
+ import { ResolverActions } from "../../utils/enums";
1
2
  import { BaseMetadata } from "./base-metadata.data.model";
3
+ import { PartialUser } from "./comment-resolver.data.model";
2
4
  import { ReactionAnnotation } from "./reaction-annotation.data.model";
3
- import { ResolverResponse, ResolverConfig } from "./resolver.data.model";
4
- import { ResolverActions } from "../../utils/enums";
5
+ import { ResolverConfig, ResolverResponse } from "./resolver.data.model";
5
6
  export interface ReactionAnnotationDataProvider {
6
7
  get: (request: GetReactionResolverRequest) => Promise<ResolverResponse<Record<string, PartialReactionAnnotation>>>;
7
8
  save: (request: SaveReactionResolverRequest) => Promise<ResolverResponse<undefined>>;
@@ -37,4 +38,5 @@ export interface PartialReactionAnnotation {
37
38
  annotationId: string;
38
39
  metadata?: BaseMetadata;
39
40
  icon?: string;
41
+ from?: PartialUser;
40
42
  }
@@ -180,6 +180,8 @@ export interface RecorderBoundedScaleRange {
180
180
  centerY?: number;
181
181
  topLeftX?: number;
182
182
  topLeftY?: number;
183
+ topLeftXPixels?: number;
184
+ topLeftYPixels?: number;
183
185
  }
184
186
  export interface RecorderEditRange {
185
187
  trimRanges: RecorderBoundedTrimRange[];
@@ -213,6 +215,7 @@ declare class RecorderDataAsset {
213
215
  */
214
216
  fileFormat?: RecorderFileFormat;
215
217
  thumbnailUrl?: string;
218
+ transcription: RecorderDataTranscription;
216
219
  }
217
220
  export declare class RecorderData {
218
221
  recorderId: string;
@@ -8,10 +8,24 @@ export interface RecordingDeleteEvent extends RecorderData {
8
8
  }
9
9
  export interface RecordingEditDoneEvent extends RecorderData {
10
10
  }
11
+ export interface RecordingActionsEvent {
12
+ type: 'audio' | 'video' | 'screen';
13
+ }
14
+ export interface RecordingStartedEvent extends RecordingActionsEvent {
15
+ }
16
+ export interface RecordingPausedEvent extends RecordingActionsEvent {
17
+ }
18
+ export interface RecordingCancelledEvent extends RecordingActionsEvent {
19
+ }
20
+ export interface RecordingStoppedEvent extends RecordingActionsEvent {
21
+ }
22
+ export interface RecordingResumedEvent extends RecordingActionsEvent {
23
+ }
11
24
  export interface RecordingErrorEvent {
12
25
  type: string;
13
26
  message: string;
14
27
  recorderId?: string;
28
+ url?: string;
15
29
  }
16
30
  export interface RecordingSaveInitiatedEvent {
17
31
  annotationId?: string;
@@ -23,4 +37,9 @@ export type RecorderEventTypesMap = {
23
37
  [RecorderEventTypes.RECORDING_DONE]: RecordingDoneEvent;
24
38
  [RecorderEventTypes.RECORDING_EDIT_DONE]: RecordingEditDoneEvent;
25
39
  [RecorderEventTypes.DELETE_RECORDING]: RecordingDeleteEvent;
40
+ [RecorderEventTypes.RECORDING_STARTED]: RecordingStartedEvent;
41
+ [RecorderEventTypes.RECORDING_PAUSED]: RecordingPausedEvent;
42
+ [RecorderEventTypes.RECORDING_CANCELLED]: RecordingCancelledEvent;
43
+ [RecorderEventTypes.RECORDING_STOPPED]: RecordingStoppedEvent;
44
+ [RecorderEventTypes.RECORDING_RESUMED]: RecordingResumedEvent;
26
45
  };
@@ -105,3 +105,7 @@ export declare class RecorderEncodingOptions {
105
105
  safari?: MediaRecorderOptions;
106
106
  other?: MediaRecorderOptions;
107
107
  }
108
+ export declare class RecorderDevicePermissionOptions {
109
+ audio?: boolean;
110
+ video?: boolean;
111
+ }
@@ -3,6 +3,13 @@ export interface ResolverConfig {
3
3
  saveRetryConfig?: RetryConfig;
4
4
  deleteRetryConfig?: RetryConfig;
5
5
  getRetryConfig?: RetryConfig;
6
+ resolveUsersConfig?: ResolveUsersConfig;
7
+ fieldsToRemove?: string[];
8
+ }
9
+ export interface ResolveUsersConfig {
10
+ organization?: boolean;
11
+ folder?: boolean;
12
+ document?: boolean;
6
13
  }
7
14
  export interface ResolverResponse<T> {
8
15
  data?: T;
@@ -11,6 +11,12 @@ export declare class UserIAM {
11
11
  * The user's contact details
12
12
  */
13
13
  user: UserContact;
14
+ documentIds?: string[];
15
+ folderIds?: string[];
16
+ organizationIds?: string[];
17
+ documentIdsCount?: number;
18
+ folderIdsCount?: number;
19
+ organizationIdsCount?: number;
14
20
  /**
15
21
  * The user's role in the document
16
22
  */