@veltdev/sdk 4.5.0-beta.6 → 4.5.0-beta.61

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 +46 -7
  2. package/app/models/data/button.data.model.d.ts +2 -0
  3. package/app/models/data/comment-annotation.data.model.d.ts +7 -0
  4. package/app/models/data/comment-resolver.data.model.d.ts +19 -0
  5. package/app/models/data/comment-sidebar-config.model.d.ts +26 -0
  6. package/app/models/data/comment.data.model.d.ts +1 -0
  7. package/app/models/data/core-events.data.model.d.ts +9 -0
  8. package/app/models/data/crdt.data.model.d.ts +59 -0
  9. package/app/models/data/custom-filter.data.model.d.ts +8 -0
  10. package/app/models/data/document-paths.data.model.d.ts +12 -0
  11. package/app/models/data/document.data.model.d.ts +2 -0
  12. package/app/models/data/location.model.d.ts +10 -0
  13. package/app/models/data/media-preview-config.data.model.d.ts +2 -0
  14. package/app/models/data/multi-thread.data.model.d.ts +2 -0
  15. package/app/models/data/notification.model.d.ts +23 -1
  16. package/app/models/data/notifications-events.data.model.d.ts +9 -0
  17. package/app/models/data/presence-actions.data.model.d.ts +5 -0
  18. package/app/models/data/presence-events.data.model.d.ts +8 -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 +29 -0
  22. package/app/models/data/recorder.model.d.ts +6 -8
  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 +116 -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 +15 -1
  31. package/app/models/element/recorder-element.model.d.ts +71 -1
  32. package/app/utils/constants.d.ts +45 -0
  33. package/app/utils/enums.d.ts +23 -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 +117 -106
@@ -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,6 +24,7 @@ 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";
@@ -31,11 +32,13 @@ import { FetchDocumentsResponse, FetchFoldersResponse } from "../models/data/doc
31
32
  import { UserDataProvider } from "../models/data/user-resolver.data.model";
32
33
  import { VeltDataProvider } from "../models/data/provider.data.model";
33
34
  import { VeltResetButtonStateConfig } from "../models/data/button.data.model";
35
+ import { SetLocationsRequestOptions } from "../models/data/location.model";
34
36
 
35
37
  export declare class Snippyly {
36
38
  constructor();
37
39
  initConfig: (apiKey: string, config?: Config) => void;
38
40
  identify: (user: User, userOptions?: UserOptions) => Promise<unknown>;
41
+ setVeltAuthProvider: (veltAuthProvider: VeltAuthProvider) => Promise<User | null>;
39
42
  /**
40
43
  * Tell us who the currently logged in user is.
41
44
  *
@@ -48,17 +51,22 @@ export declare class Snippyly {
48
51
  * @param id unique document ID
49
52
  * @param documentMetadata Document Metadata
50
53
  */
51
- setDocument: (id: string, documentMetadata?: DocumentMetadata) => void;
54
+ setDocument: (id: string, documentMetadata?: DocumentMetadata) => Promise<void>;
52
55
  /**
53
56
  * Tell us the unique ID of the current document/resource on which you want to enable collaboration.
54
57
  * @param id unique document ID
55
58
  * @deprecated This method is deprecated. Use `setDocuments` method instead.
56
59
  */
57
- setDocumentId: (id: string) => void;
60
+ setDocumentId: (id: string) => Promise<void>;
58
61
  /**
59
62
  * To set multiple documents
60
63
  */
61
- setDocuments: (documents: Document[], options?: SetDocumentsRequestOptions) => void;
64
+ setDocuments: (documents: Document[], options?: SetDocumentsRequestOptions) => Promise<void>;
65
+ /**
66
+ * To set the root document
67
+ * @param document Document object
68
+ */
69
+ setRootDocument: (document: Document) => Promise<void>;
62
70
  /**
63
71
  * To unset the document id
64
72
  * @deprecated This method is deprecated. Use `unsetDocuments` method instead.
@@ -100,12 +108,39 @@ export declare class Snippyly {
100
108
  * @param params Location
101
109
  * @param appendLocation Append location to existing location
102
110
  */
103
- setLocation: (params: Location, appendLocation?: boolean) => void;
111
+ setLocation: (params: Location, appendLocation?: boolean) => Promise<void>;
112
+
113
+ /**
114
+ * To set the root location
115
+ * @param location Location object
116
+ */
117
+ setRootLocation: (location: Location) => Promise<void>;
118
+
119
+ /**
120
+ * To set multiple locations
121
+ * @param locations Location objects
122
+ * @param options Set locations options
123
+ */
124
+ setLocations: (locations: Location[], options?: SetLocationsRequestOptions) => Promise<void>;
125
+
104
126
  /**
105
127
  * To remove location from a User
106
128
  * @param location Location
107
129
  */
108
130
  removeLocation: (location?: Location) => void;
131
+
132
+ /**
133
+ * To remove multiple locations
134
+ * @param locations Location objects
135
+ */
136
+ removeLocations: (locations?: Location[]) => void;
137
+
138
+ /**
139
+ * To remove location ids
140
+ * @param locationIds Location ids
141
+ */
142
+ unsetLocationIds: (locationIds?: string[]) => void;
143
+
109
144
  /**
110
145
  * To exclude data of specific location ids
111
146
  * @param ids Location Ids
@@ -192,6 +227,10 @@ export declare class Snippyly {
192
227
  * Get the Area Object.
193
228
  */
194
229
  getReactionElement: () => ReactionElement;
230
+ /**
231
+ * Get the CRDT Element Object.
232
+ */
233
+ getCrdtElement: () => CrdtElement;
195
234
  /**
196
235
  * Get the metadata of the current resource.
197
236
  */
@@ -211,7 +250,7 @@ export declare class Snippyly {
211
250
  * @param location Location object
212
251
  * @deprecated This method is deprecated and will be removed in next release. Use `setLocation` method with `appendLocation: true` instead.
213
252
  */
214
- addLocation: (location: any) => any;
253
+ addLocation: (location: any) => Promise<any>;
215
254
  /**
216
255
  * To set the dark mode of Velt components.
217
256
  * @param value {boolean} true/false
@@ -315,5 +354,5 @@ export declare class Snippyly {
315
354
  /**
316
355
  * To reset the button toggle map.
317
356
  */
318
- resetVeltButtonState: (config?: VeltResetButtonStateConfig) => void;
357
+ resetVeltButtonState: (config?: VeltResetButtonStateConfig) => void;
319
358
  }
@@ -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;
@@ -164,6 +164,10 @@ export declare class CommentAnnotation {
164
164
  * Custom context data provided by the user
165
165
  */
166
166
  context?: any;
167
+ /**
168
+ * Context id generated from context data
169
+ */
170
+ contextId?: string;
167
171
  iam: CommentIAMConfig;
168
172
  isPageAnnotation?: boolean;
169
173
  targetInlineCommentElementId?: string;
@@ -244,3 +248,6 @@ export declare class CommentAnnotationSubscribedGroups {
244
248
  export declare class UpdateContextConfig {
245
249
  merge?: boolean;
246
250
  }
251
+ export interface ContextOptions {
252
+ partialMatch?: boolean;
253
+ }
@@ -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,23 +1,35 @@
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;
22
+ document?: FilterTypeConfig;
13
23
  people?: FilterTypeConfig;
14
24
  assigned?: FilterTypeConfig;
15
25
  tagged?: FilterTypeConfig;
26
+ involved?: FilterTypeConfig;
16
27
  priority?: FilterTypeConfig;
17
28
  status?: FilterTypeConfig;
18
29
  category?: FilterTypeConfig;
19
30
  commentType?: FilterTypeConfig;
20
31
  version?: FilterTypeConfig;
32
+ [key: string]: FilterTypeConfig | undefined;
21
33
  }
22
34
  export declare class CommentSidebarGroupConfig {
23
35
  enable?: boolean;
@@ -25,6 +37,10 @@ export declare class CommentSidebarGroupConfig {
25
37
  }
26
38
  export declare class CommentSidebarFilters {
27
39
  location?: Location[];
40
+ document?: {
41
+ id?: string;
42
+ documentName?: string;
43
+ }[];
28
44
  people?: {
29
45
  userId?: string;
30
46
  email?: string;
@@ -40,6 +56,11 @@ export declare class CommentSidebarFilters {
40
56
  email?: string;
41
57
  name?: string;
42
58
  }[];
59
+ involved?: {
60
+ userId?: string;
61
+ email?: string;
62
+ name?: string;
63
+ }[];
43
64
  priority?: string[];
44
65
  status?: string[];
45
66
  category?: string[];
@@ -47,6 +68,10 @@ export declare class CommentSidebarFilters {
47
68
  id: string;
48
69
  name?: string;
49
70
  }[];
71
+ [key: string]: {
72
+ id?: string;
73
+ name?: string;
74
+ }[] | string[] | undefined;
50
75
  }
51
76
  export interface CommentSidebarCustomActionsState {
52
77
  [key: string]: boolean;
@@ -56,6 +81,7 @@ export interface CommentSidebarCustomActionEventData {
56
81
  data: CommentAnnotation[];
57
82
  unreadDataMap: UnreadCommentsMap;
58
83
  systemFilteredData: CommentAnnotation[];
84
+ customFilters: CustomFilters;
59
85
  }
60
86
  export declare class CommentSidebarData {
61
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,18 @@ 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;
6
10
  /**
7
11
  * Presence path.
8
12
  */
9
13
  presence?: string;
14
+ /**
15
+ * User config path.
16
+ */
17
+ userConfig?: string;
10
18
  docs?: string;
11
19
  /**
12
20
  * Cursor path.
@@ -64,6 +72,10 @@ export declare class DocumentPaths {
64
72
  * User login path.
65
73
  */
66
74
  logins?: string;
75
+ /**
76
+ * CRDT path.
77
+ */
78
+ crdt?: string;
67
79
  /**
68
80
  * Selection path.
69
81
  */
@@ -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> {
@@ -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
+ };
@@ -0,0 +1,5 @@
1
+ export interface PresenceRequestQuery {
2
+ documentId?: string;
3
+ organizationId?: string;
4
+ statuses?: string[];
5
+ }
@@ -3,6 +3,14 @@ import { PresenceUser } from "./presence-user.data.model";
3
3
  export interface PresenceMultipleUsersOnlineEvent {
4
4
  users: PresenceUser[];
5
5
  }
6
+ export interface PresenceUserStateChangeEvent {
7
+ user: PresenceUser;
8
+ state: string;
9
+ }
6
10
  export type PresenceEventTypesMap = {
7
11
  [PresenceEventTypes.MULTIPLE_USERS_ONLINE]: PresenceMultipleUsersOnlineEvent;
12
+ [PresenceEventTypes.USER_STATE_CHANGE]: PresenceUserStateChangeEvent;
8
13
  };
14
+ export interface GetPresenceDataResponse {
15
+ data: PresenceUser[] | null;
16
+ }
@@ -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,9 +8,38 @@ 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
+ }
24
+ export interface RecordingErrorEvent {
25
+ type: string;
26
+ message: string;
27
+ recorderId?: string;
28
+ url?: string;
29
+ }
30
+ export interface RecordingSaveInitiatedEvent {
31
+ annotationId?: string;
32
+ message: string;
33
+ type: 'edit' | 'record';
34
+ }
11
35
  export type RecorderEventTypesMap = {
12
36
  [RecorderEventTypes.TRANSCRIPTION_DONE]: TranscriptionDoneEvent;
13
37
  [RecorderEventTypes.RECORDING_DONE]: RecordingDoneEvent;
14
38
  [RecorderEventTypes.RECORDING_EDIT_DONE]: RecordingEditDoneEvent;
15
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;
16
45
  };
@@ -93,15 +93,13 @@ export declare class RecordedData {
93
93
  };
94
94
  getThumbnailTag: (url?: string) => string;
95
95
  }
96
+ export declare class RecorderQualityConstraintsOptions {
97
+ video?: MediaTrackConstraints;
98
+ audio?: MediaTrackConstraints;
99
+ }
96
100
  export declare class RecorderQualityConstraints {
97
- safari?: {
98
- video?: MediaTrackConstraints;
99
- audio?: MediaTrackConstraints;
100
- };
101
- other?: {
102
- video?: MediaTrackConstraints;
103
- audio?: MediaTrackConstraints;
104
- };
101
+ safari?: RecorderQualityConstraintsOptions;
102
+ other?: RecorderQualityConstraintsOptions;
105
103
  }
106
104
  export declare class RecorderEncodingOptions {
107
105
  safari?: MediaRecorderOptions;
@@ -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
  */
@@ -1,5 +1,7 @@
1
+ import { ResolverConfig } from "./resolver.data.model";
1
2
  import { User } from "./user.data.model";
2
3
  export interface UserDataProvider {
3
4
  get(userIds: string[]): Promise<Record<string, User>>;
5
+ config?: ResolverConfig;
4
6
  resolveTimeout?: number;
5
7
  }