@mattermost/types 7.3.0 → 7.7.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.
package/lib/apps.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { ProductScope } from './products';
1
2
  export declare enum Permission {
2
3
  UserJoinedChannelNotification = "user_joined_channel_notification",
3
4
  ActAsBot = "act_as_bot",
@@ -41,6 +42,7 @@ export declare type AppsState = {
41
42
  export declare type AppBinding = {
42
43
  app_id: string;
43
44
  location?: string;
45
+ supported_product_ids?: ProductScope;
44
46
  icon?: string;
45
47
  label: string;
46
48
  hint?: string;
package/lib/boards.d.ts CHANGED
@@ -4,3 +4,55 @@ export declare type BoardsUsageResponse = {
4
4
  used_cards: number;
5
5
  card_limit_timestamp: number;
6
6
  };
7
+ declare const boardTypes: string[];
8
+ declare type BoardTypes = typeof boardTypes[number];
9
+ declare type PropertyTypeEnum = 'text' | 'number' | 'select' | 'multiSelect' | 'date' | 'person' | 'file' | 'checkbox' | 'url' | 'email' | 'phone' | 'createdTime' | 'createdBy' | 'updatedTime' | 'updatedBy' | 'unknown';
10
+ interface IPropertyOption {
11
+ id: string;
12
+ value: string;
13
+ color: string;
14
+ }
15
+ interface IPropertyTemplate {
16
+ id: string;
17
+ name: string;
18
+ type: PropertyTypeEnum;
19
+ options: IPropertyOption[];
20
+ }
21
+ export declare type Board = {
22
+ id: string;
23
+ teamId: string;
24
+ channelId?: string;
25
+ createdBy: string;
26
+ modifiedBy: string;
27
+ type: BoardTypes;
28
+ minimumRole: string;
29
+ title: string;
30
+ description: string;
31
+ icon?: string;
32
+ showDescription: boolean;
33
+ isTemplate: boolean;
34
+ templateVersion: number;
35
+ properties: Record<string, string | string[]>;
36
+ cardProperties: IPropertyTemplate[];
37
+ createAt: number;
38
+ updateAt: number;
39
+ deleteAt: number;
40
+ };
41
+ export declare type BoardTemplate = Board;
42
+ export declare type BoardPatch = {
43
+ channelId?: string;
44
+ type?: BoardTypes;
45
+ minimumRole?: string;
46
+ title?: string;
47
+ description?: string;
48
+ icon?: string;
49
+ showDescription?: boolean;
50
+ updatedProperties?: Record<string, any>;
51
+ deletedProperties?: string[];
52
+ updatedCardProperties?: IPropertyTemplate[];
53
+ deletedCardProperties?: string[];
54
+ };
55
+ export declare type CreateBoardResponse = {
56
+ boards: Board[];
57
+ };
58
+ export {};
package/lib/boards.js CHANGED
@@ -1,2 +1,7 @@
1
1
  "use strict";
2
+ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
+ // See LICENSE.txt for license information.
2
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
+ const BoardTypeOpen = 'O';
6
+ const BoardTypePrivate = 'P';
7
+ const boardTypes = [BoardTypeOpen, BoardTypePrivate];
package/lib/channels.d.ts CHANGED
@@ -79,6 +79,8 @@ export declare type ChannelMembership = {
79
79
  mention_count: number;
80
80
  /** The number of unread mentions in root posts in this channel */
81
81
  mention_count_root: number;
82
+ /** The number of unread urgent mentions in this channel */
83
+ urgent_mention_count: number;
82
84
  notify_props: Partial<ChannelNotifyProps>;
83
85
  last_update_at: number;
84
86
  scheme_user: boolean;
@@ -95,6 +97,8 @@ export declare type ChannelUnread = {
95
97
  msg_count_root: number;
96
98
  /** The number of unread mentions in this channel */
97
99
  mention_count: number;
100
+ /** The number of unread urgent mentions in this channel */
101
+ urgent_mention_count: number;
98
102
  /** The number of unread mentions in root posts in this channel */
99
103
  mention_count_root: number;
100
104
  last_viewed_at: number;
package/lib/cloud.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { ValueOf } from './utilities';
1
2
  export declare type CloudState = {
2
3
  subscription?: Subscription;
3
4
  products?: Record<string, Product>;
@@ -7,14 +8,18 @@ export declare type CloudState = {
7
8
  limitsLoaded: boolean;
8
9
  limits: Limits;
9
10
  };
11
+ errors: {
12
+ subscription?: true;
13
+ products?: true;
14
+ customer?: true;
15
+ invoices?: true;
16
+ limits?: true;
17
+ };
18
+ selfHostedSignup: {
19
+ progress: ValueOf<typeof SelfHostedSignupProgress>;
20
+ };
10
21
  };
11
- export declare type Subscription = SubscriptionBase & {
12
- is_legacy_cloud_paid_tier?: boolean;
13
- };
14
- export declare type SubscriptionResponse = SubscriptionBase & {
15
- is_paid_tier: string;
16
- };
17
- declare type SubscriptionBase = {
22
+ export declare type Subscription = {
18
23
  id: string;
19
24
  customer_id: string;
20
25
  product_id: string;
@@ -24,6 +29,7 @@ declare type SubscriptionBase = {
24
29
  create_at: number;
25
30
  seats: number;
26
31
  last_invoice?: Invoice;
32
+ upcoming_invoice?: Invoice;
27
33
  trial_end_at: number;
28
34
  is_free_trial: string;
29
35
  delinquent_since?: number;
@@ -38,6 +44,7 @@ export declare type Product = {
38
44
  sku: string;
39
45
  billing_scheme: string;
40
46
  recurring_interval: string;
47
+ cross_sells_to: string;
41
48
  };
42
49
  export declare type AddOn = {
43
50
  id: string;
@@ -45,6 +52,23 @@ export declare type AddOn = {
45
52
  display_name: string;
46
53
  price_per_seat: number;
47
54
  };
55
+ export declare const TypePurchases: {
56
+ readonly firstSelfHostLicensePurchase: "first_purchase";
57
+ readonly renewalSelfHost: "renewal_self";
58
+ readonly monthlySubscription: "monthly_subscription";
59
+ readonly annualSubscription: "annual_subscription";
60
+ };
61
+ export declare const SelfHostedSignupProgress: {
62
+ readonly START: "START";
63
+ readonly CREATED_CUSTOMER: "CREATED_CUSTOMER";
64
+ readonly CREATED_INTENT: "CREATED_INTENT";
65
+ readonly CONFIRMED_INTENT: "CONFIRMED_INTENT";
66
+ readonly CREATED_SUBSCRIPTION: "CREATED_SUBSCRIPTION";
67
+ readonly PAID: "PAID";
68
+ readonly CREATED_LICENSE: "CREATED_LICENSE";
69
+ };
70
+ export declare type MetadataGatherWireTransferKeys = `${ValueOf<typeof TypePurchases>}_alt_payment_method`;
71
+ export declare type CustomerMetadataGatherWireTransfer = Partial<Record<MetadataGatherWireTransferKeys, string>>;
48
72
  export declare type CloudCustomer = {
49
73
  id: string;
50
74
  creator_id: string;
@@ -57,14 +81,14 @@ export declare type CloudCustomer = {
57
81
  billing_address: Address;
58
82
  company_address: Address;
59
83
  payment_method: PaymentMethod;
60
- };
84
+ } & CustomerMetadataGatherWireTransfer;
61
85
  export declare type CloudCustomerPatch = {
62
86
  email?: string;
63
87
  name?: string;
64
88
  num_employees?: number;
65
89
  contact_first_name?: string;
66
90
  contact_last_name?: string;
67
- };
91
+ } & CustomerMetadataGatherWireTransfer;
68
92
  export declare type Address = {
69
93
  city: string;
70
94
  country: string;
@@ -82,7 +106,9 @@ export declare type PaymentMethod = {
82
106
  name: string;
83
107
  };
84
108
  export declare type NotifyAdminRequest = {
85
- current_team_id: string;
109
+ trial_notification: boolean;
110
+ required_plan: string;
111
+ required_feature: string;
86
112
  };
87
113
  export declare type Invoice = {
88
114
  id: string;
@@ -114,9 +140,6 @@ export declare type InvoiceLineItem = {
114
140
  metadata: Record<string, string>;
115
141
  };
116
142
  export declare type Limits = {
117
- integrations?: {
118
- enabled?: number;
119
- };
120
143
  messages?: {
121
144
  history?: number;
122
145
  };
@@ -145,11 +168,6 @@ export interface CloudUsage {
145
168
  cardsLoaded: boolean;
146
169
  };
147
170
  teams: TeamsUsage;
148
- integrations: IntegrationsUsage;
149
- }
150
- export interface IntegrationsUsage {
151
- enabled: number;
152
- enabledLoaded: boolean;
153
171
  }
154
172
  export declare type TeamsUsage = {
155
173
  active: number;
@@ -159,4 +177,9 @@ export declare type TeamsUsage = {
159
177
  export declare type ValidBusinessEmail = {
160
178
  is_valid: boolean;
161
179
  };
162
- export {};
180
+ export interface CreateSubscriptionRequest {
181
+ product_id: string;
182
+ add_ons: string[];
183
+ seats: number;
184
+ internal_purchase_order?: string;
185
+ }
package/lib/cloud.js CHANGED
@@ -2,7 +2,22 @@
2
2
  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
3
  // See LICENSE.txt for license information.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.InvoiceLineItemType = void 0;
5
+ exports.InvoiceLineItemType = exports.SelfHostedSignupProgress = exports.TypePurchases = void 0;
6
+ exports.TypePurchases = {
7
+ firstSelfHostLicensePurchase: 'first_purchase',
8
+ renewalSelfHost: 'renewal_self',
9
+ monthlySubscription: 'monthly_subscription',
10
+ annualSubscription: 'annual_subscription',
11
+ };
12
+ exports.SelfHostedSignupProgress = {
13
+ START: 'START',
14
+ CREATED_CUSTOMER: 'CREATED_CUSTOMER',
15
+ CREATED_INTENT: 'CREATED_INTENT',
16
+ CONFIRMED_INTENT: 'CONFIRMED_INTENT',
17
+ CREATED_SUBSCRIPTION: 'CREATED_SUBSCRIPTION',
18
+ PAID: 'PAID',
19
+ CREATED_LICENSE: 'CREATED_LICENSE',
20
+ };
6
21
  // actual string values come from customer-web-server and should be kept in sync with values seen there
7
22
  exports.InvoiceLineItemType = {
8
23
  Full: 'full',
package/lib/config.d.ts CHANGED
@@ -2,6 +2,7 @@ export declare type ClientConfig = {
2
2
  AboutLink: string;
3
3
  AllowBannerDismissal: string;
4
4
  AllowCustomThemes: string;
5
+ AllowSyncedDrafts: string;
5
6
  AllowedThemes: string;
6
7
  AndroidAppDownloadLink: string;
7
8
  AndroidLatestVersion: string;
@@ -49,6 +50,7 @@ export declare type ClientConfig = {
49
50
  EnableCustomEmoji: string;
50
51
  EnableCustomGroups: string;
51
52
  EnableCustomUserStatuses: string;
53
+ EnableLastActiveTime: string;
52
54
  EnableTimedDND: string;
53
55
  EnableCustomTermsOfService: string;
54
56
  EnableDeveloper: string;
@@ -99,8 +101,6 @@ export declare type ClientConfig = {
99
101
  EnforceMultifactorAuthentication: string;
100
102
  ExperimentalClientSideCertCheck: string;
101
103
  ExperimentalClientSideCertEnable: string;
102
- ExperimentalCloudBilling: string;
103
- ExperimentalDataPrefetch: string;
104
104
  ExperimentalEnableAuthenticationTransfer: string;
105
105
  ExperimentalEnableAutomaticReplies: string;
106
106
  ExperimentalEnableDefaultChannelLeaveJoinMessages: string;
@@ -110,8 +110,9 @@ export declare type ClientConfig = {
110
110
  ExperimentalTimezone: string;
111
111
  ExperimentalViewArchivedChannels: string;
112
112
  FileLevel: string;
113
+ FeatureFlagBoardsProduct: string;
113
114
  FeatureFlagGraphQL: string;
114
- FeatureFlagPlanUpgradeButtonText: string;
115
+ FeatureFlagAnnualSubscription: string;
115
116
  GfycatAPIKey: string;
116
117
  GfycatAPISecret: string;
117
118
  GoogleDeveloperKey: string;
@@ -183,6 +184,9 @@ export declare type ClientConfig = {
183
184
  ExperimentalSharedChannels: string;
184
185
  EnableAppBar: string;
185
186
  EnableComplianceExport: string;
187
+ PostPriority: string;
188
+ ReduceOnBoardingTaskList: string;
189
+ PostAcknowledgements: string;
186
190
  };
187
191
  export declare type License = {
188
192
  id: string;
@@ -268,8 +272,12 @@ export declare type ServiceSettings = {
268
272
  EnablePostUsernameOverride: boolean;
269
273
  EnablePostIconOverride: boolean;
270
274
  EnableLinkPreviews: boolean;
275
+ EnablePermalinkPreviews: boolean;
276
+ RestrictLinkPreviews: string;
271
277
  EnableTesting: boolean;
272
278
  EnableDeveloper: boolean;
279
+ DeveloperFlags: string;
280
+ EnableClientPerformanceDebugging: boolean;
273
281
  EnableOpenTracing: boolean;
274
282
  EnableSecurityFixAlert: boolean;
275
283
  EnableInsecureOutgoingConnections: boolean;
@@ -297,11 +305,12 @@ export declare type ServiceSettings = {
297
305
  EnableCustomEmoji: boolean;
298
306
  EnableEmojiPicker: boolean;
299
307
  EnableGifPicker: boolean;
300
- GfycatApiKey: string;
301
- GfycatApiSecret: string;
308
+ GfycatAPIKey: string;
309
+ GfycatAPISecret: string;
302
310
  PostEditTimeLimit: number;
303
311
  TimeBetweenUserTypingUpdatesMilliseconds: number;
304
312
  EnablePostSearch: boolean;
313
+ EnableFileSearch: boolean;
305
314
  MinimumHashtagLength: number;
306
315
  EnableUserTypingMessages: boolean;
307
316
  EnableChannelViewedMessages: boolean;
@@ -313,8 +322,9 @@ export declare type ServiceSettings = {
313
322
  EnableOnboardingFlow: boolean;
314
323
  ExperimentalEnableDefaultChannelLeaveJoinMessages: boolean;
315
324
  ExperimentalGroupUnreadChannels: string;
316
- ExperimentalDataPrefetch: boolean;
317
325
  EnableAPITeamDeletion: boolean;
326
+ EnableAPITriggerAdminNotifications: boolean;
327
+ EnableAPIUserDeletion: boolean;
318
328
  ExperimentalEnableHardenedMode: boolean;
319
329
  ExperimentalStrictCSRFEnforcement: boolean;
320
330
  EnableEmailInvitations: boolean;
@@ -322,10 +332,21 @@ export declare type ServiceSettings = {
322
332
  EnableBotAccountCreation: boolean;
323
333
  EnableSVGs: boolean;
324
334
  EnableLatex: boolean;
335
+ EnableInlineLatex: boolean;
325
336
  EnableLocalMode: boolean;
326
337
  LocalModeSocketLocation: string;
327
338
  CollapsedThreads: CollapsedThreads;
328
339
  ThreadAutoFollow: boolean;
340
+ PostPriority: boolean;
341
+ EnableAPIChannelDeletion: boolean;
342
+ EnableAWSMetering: boolean;
343
+ SplitKey: string;
344
+ FeatureFlagSyncIntervalSeconds: number;
345
+ DebugSplit: boolean;
346
+ ManagedResourcePaths: string;
347
+ EnableCustomGroups: boolean;
348
+ SelfHostedPurchase: boolean;
349
+ AllowSyncedDrafts: boolean;
329
350
  };
330
351
  export declare type TeamSettings = {
331
352
  SiteName: string;
@@ -349,6 +370,7 @@ export declare type TeamSettings = {
349
370
  LockTeammateNameDisplay: boolean;
350
371
  ExperimentalPrimaryTeam: string;
351
372
  ExperimentalDefaultChannels: string[];
373
+ EnableLastActiveTime: boolean;
352
374
  };
353
375
  export declare type ClientRequirements = {
354
376
  AndroidLatestVersion: string;
@@ -363,16 +385,20 @@ export declare type SqlSettings = {
363
385
  DataSourceSearchReplicas: string[];
364
386
  MaxIdleConns: number;
365
387
  ConnMaxLifetimeMilliseconds: number;
388
+ ConnMaxIdleTimeMilliseconds: number;
366
389
  MaxOpenConns: number;
367
390
  Trace: boolean;
368
391
  AtRestEncryptKey: string;
369
392
  QueryTimeout: number;
370
393
  DisableDatabaseSearch: boolean;
394
+ MigrationsStatementTimeoutSeconds: number;
395
+ ReplicaLagSettings: ReplicaLagSetting[];
371
396
  };
372
397
  export declare type LogSettings = {
373
398
  EnableConsole: boolean;
374
399
  ConsoleLevel: string;
375
400
  ConsoleJson: boolean;
401
+ EnableColor: boolean;
376
402
  EnableFile: boolean;
377
403
  FileLevel: string;
378
404
  FileJson: boolean;
@@ -380,15 +406,9 @@ export declare type LogSettings = {
380
406
  EnableWebhookDebugging: boolean;
381
407
  EnableDiagnostics: boolean;
382
408
  EnableSentry: boolean;
409
+ AdvancedLoggingConfig: string;
383
410
  };
384
411
  export declare type ExperimentalAuditSettings = {
385
- SysLogEnabled: boolean;
386
- SysLogIP: string;
387
- SysLogPort: number;
388
- SysLogTag: string;
389
- SysLogCert: string;
390
- SysLogInsecure: boolean;
391
- SysLogMaxQueueSize: number;
392
412
  FileEnabled: boolean;
393
413
  FileName: string;
394
414
  FileMaxSizeMB: number;
@@ -396,15 +416,18 @@ export declare type ExperimentalAuditSettings = {
396
416
  FileMaxBackups: number;
397
417
  FileCompress: boolean;
398
418
  FileMaxQueueSize: number;
419
+ AdvancedLoggingConfig: string;
399
420
  };
400
421
  export declare type NotificationLogSettings = {
401
422
  EnableConsole: boolean;
402
423
  ConsoleLevel: string;
403
424
  ConsoleJson: boolean;
425
+ EnableColor: boolean;
404
426
  EnableFile: boolean;
405
427
  FileLevel: string;
406
428
  FileJson: boolean;
407
429
  FileLocation: string;
430
+ AdvancedLoggingConfig: string;
408
431
  };
409
432
  export declare type PasswordSettings = {
410
433
  MinimumLength: number;
@@ -418,20 +441,26 @@ export declare type FileSettings = {
418
441
  EnableMobileUpload: boolean;
419
442
  EnableMobileDownload: boolean;
420
443
  MaxFileSize: number;
444
+ MaxImageResolution: number;
445
+ MaxImageDecoderConcurrency: number;
421
446
  DriverName: string;
422
447
  Directory: string;
423
448
  EnablePublicLink: boolean;
449
+ ExtractContent: boolean;
450
+ ArchiveRecursion: boolean;
424
451
  PublicLinkSalt: string;
425
452
  InitialFont: string;
426
453
  AmazonS3AccessKeyId: string;
427
454
  AmazonS3SecretAccessKey: string;
428
455
  AmazonS3Bucket: string;
456
+ AmazonS3PathPrefix: string;
429
457
  AmazonS3Region: string;
430
458
  AmazonS3Endpoint: string;
431
459
  AmazonS3SSL: boolean;
432
460
  AmazonS3SignV2: boolean;
433
461
  AmazonS3SSE: boolean;
434
462
  AmazonS3Trace: boolean;
463
+ AmazonS3RequestTimeoutMilliseconds: number;
435
464
  };
436
465
  export declare type EmailSettings = {
437
466
  EnableSignUpWithEmail: boolean;
@@ -454,6 +483,7 @@ export declare type EmailSettings = {
454
483
  SendPushNotifications: boolean;
455
484
  PushNotificationServer: string;
456
485
  PushNotificationContents: string;
486
+ PushNotificationBuffer: number;
457
487
  EnableEmailBatching: boolean;
458
488
  EmailBatchingBufferSize: number;
459
489
  EmailBatchingInterval: number;
@@ -463,6 +493,7 @@ export declare type EmailSettings = {
463
493
  LoginButtonColor: string;
464
494
  LoginButtonBorderColor: string;
465
495
  LoginButtonTextColor: string;
496
+ EnableInactivityEmail: boolean;
466
497
  };
467
498
  export declare type RateLimitSettings = {
468
499
  Enable: boolean;
@@ -486,6 +517,7 @@ export declare type SupportSettings = {
486
517
  SupportEmail: string;
487
518
  CustomTermsOfServiceEnabled: boolean;
488
519
  CustomTermsOfServiceReAcceptancePeriod: number;
520
+ EnableAskCommunityLink: boolean;
489
521
  };
490
522
  export declare type AnnouncementSettings = {
491
523
  EnableBanner: boolean;
@@ -493,6 +525,11 @@ export declare type AnnouncementSettings = {
493
525
  BannerColor: string;
494
526
  BannerTextColor: string;
495
527
  AllowBannerDismissal: boolean;
528
+ AdminNoticesEnabled: boolean;
529
+ UserNoticesEnabled: boolean;
530
+ NoticesURL: string;
531
+ NoticesFetchFrequency: number;
532
+ NoticesSkipCache: boolean;
496
533
  };
497
534
  export declare type ThemeSettings = {
498
535
  EnableThemeSelection: boolean;
@@ -550,6 +587,8 @@ export declare type LdapSettings = {
550
587
  PictureAttribute: string;
551
588
  SyncIntervalMinutes: number;
552
589
  SkipCertificateVerification: boolean;
590
+ PublicCertificateFile: string;
591
+ PrivateKeyFile: string;
553
592
  QueryTimeout: number;
554
593
  MaxPageSize: number;
555
594
  LoginFieldName: string;
@@ -562,6 +601,7 @@ export declare type ComplianceSettings = {
562
601
  Enable: boolean;
563
602
  Directory: string;
564
603
  EnableDaily: boolean;
604
+ BatchSize: number;
565
605
  };
566
606
  export declare type LocalizationSettings = {
567
607
  DefaultServerLocale: string;
@@ -579,6 +619,7 @@ export declare type SamlSettings = {
579
619
  IdpURL: string;
580
620
  IdpDescriptorURL: string;
581
621
  IdpMetadataURL: string;
622
+ ServiceProviderIdentifier: string;
582
623
  AssertionConsumerServiceURL: string;
583
624
  SignatureAlgorithm: string;
584
625
  CanonicalAlgorithm: string;
@@ -604,6 +645,7 @@ export declare type SamlSettings = {
604
645
  LoginButtonTextColor: string;
605
646
  };
606
647
  export declare type NativeAppSettings = {
648
+ AppCustomURLSchemes: string[];
607
649
  AppDownloadLink: string;
608
650
  AndroidAppDownloadLink: string;
609
651
  IosAppDownloadLink: string;
@@ -616,6 +658,7 @@ export declare type ClusterSettings = {
616
658
  BindAddress: string;
617
659
  AdvertiseAddress: string;
618
660
  UseIPAddress: boolean;
661
+ EnableGossipCompression: boolean;
619
662
  EnableExperimentalGossipEncryption: boolean;
620
663
  ReadOnlyConfig: boolean;
621
664
  GossipPort: number;
@@ -635,7 +678,10 @@ export declare type ExperimentalSettings = {
635
678
  LinkMetadataTimeoutMilliseconds: number;
636
679
  RestrictSystemAdmin: boolean;
637
680
  UseNewSAMLLibrary: boolean;
638
- CloudBilling: boolean;
681
+ EnableSharedChannels: boolean;
682
+ EnableRemoteClusterService: boolean;
683
+ EnableAppBar: boolean;
684
+ PatchPluginsReactDOM: boolean;
639
685
  };
640
686
  export declare type AnalyticsSettings = {
641
687
  MaxUsersForStatistics: number;
@@ -678,6 +724,7 @@ export declare type DataRetentionSettings = {
678
724
  FileRetentionDays: number;
679
725
  BoardsRetentionDays: number;
680
726
  DeletionJobStartTime: string;
727
+ BatchSize: number;
681
728
  };
682
729
  export declare type MessageExportSettings = {
683
730
  EnableExport: boolean;
@@ -691,11 +738,17 @@ export declare type MessageExportSettings = {
691
738
  SMTPUsername: string;
692
739
  SMTPPassword: string;
693
740
  EmailAddress: string;
741
+ SMTPServerTimeout: number;
694
742
  };
695
743
  };
696
744
  export declare type JobSettings = {
697
745
  RunJobs: boolean;
698
746
  RunScheduler: boolean;
747
+ CleanupJobsThresholdDays: number;
748
+ CleanupConfigThresholdDays: number;
749
+ };
750
+ export declare type ProductSettings = {
751
+ EnablePublicSharedBoards: boolean;
699
752
  };
700
753
  export declare type PluginSettings = {
701
754
  Enable: boolean;
@@ -714,6 +767,7 @@ export declare type PluginSettings = {
714
767
  RequirePluginSignature: boolean;
715
768
  MarketplaceURL: string;
716
769
  SignaturePublicKeyFiles: string[];
770
+ ChimeraOAuthProxyURL: string;
717
771
  };
718
772
  export declare type DisplaySettings = {
719
773
  CustomURLSchemes: string[];
@@ -731,7 +785,19 @@ export declare type ImageProxySettings = {
731
785
  RemoteImageProxyURL: string;
732
786
  RemoteImageProxyOptions: string;
733
787
  };
734
- export declare type FeatureFlags = Record<string, string>;
788
+ export declare type CloudSettings = {
789
+ CWSURL: string;
790
+ CWSAPIURL: string;
791
+ };
792
+ export declare type FeatureFlags = Record<string, string | boolean>;
793
+ export declare type ImportSettings = {
794
+ Directory: string;
795
+ RetentionDays: number;
796
+ };
797
+ export declare type ExportSettings = {
798
+ Directory: string;
799
+ RetentionDays: number;
800
+ };
735
801
  export declare type AdminConfig = {
736
802
  ServiceSettings: ServiceSettings;
737
803
  TeamSettings: TeamSettings;
@@ -766,11 +832,20 @@ export declare type AdminConfig = {
766
832
  DataRetentionSettings: DataRetentionSettings;
767
833
  MessageExportSettings: MessageExportSettings;
768
834
  JobSettings: JobSettings;
835
+ ProductSettings: ProductSettings;
769
836
  PluginSettings: PluginSettings;
770
837
  DisplaySettings: DisplaySettings;
771
838
  GuestAccountsSettings: GuestAccountsSettings;
772
839
  ImageProxySettings: ImageProxySettings;
840
+ CloudSettings: CloudSettings;
773
841
  FeatureFlags: FeatureFlags;
842
+ ImportSettings: ImportSettings;
843
+ ExportSettings: ExportSettings;
844
+ };
845
+ export declare type ReplicaLagSetting = {
846
+ DataSource: string;
847
+ QueryAbsoluteLag: string;
848
+ QueryTimeLag: string;
774
849
  };
775
850
  export declare type EnvironmentConfigSettings<T> = {
776
851
  [P in keyof T]: boolean;
@@ -0,0 +1,14 @@
1
+ import { PostMetadata, PostPriorityMetadata } from './posts';
2
+ export declare type Draft = {
3
+ create_at: number;
4
+ update_at: number;
5
+ delete_at: number;
6
+ user_id: string;
7
+ channel_id: string;
8
+ root_id: string;
9
+ message: string;
10
+ props: Record<string, any>;
11
+ file_ids?: string[];
12
+ metadata?: PostMetadata;
13
+ priority?: PostPriorityMetadata;
14
+ };
package/lib/drafts.js ADDED
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
+ // See LICENSE.txt for license information.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
package/lib/errors.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export declare type ServerError = {
2
+ type?: string;
2
3
  server_error_id?: string;
3
4
  stack?: string;
4
5
  message: string;
package/lib/gifs.d.ts ADDED
@@ -0,0 +1,152 @@
1
+ export declare type GifsState = {
2
+ app: GifsAppState;
3
+ cache: GifsCacheState;
4
+ categories: GifsCategoriesState;
5
+ search: GifsSearchState;
6
+ };
7
+ export declare type GifsAppState = {
8
+ appClassName: string;
9
+ appId: string;
10
+ appName: string;
11
+ basePath: string;
12
+ enableHistory: boolean;
13
+ header: {
14
+ tabs: number[];
15
+ displayText: boolean;
16
+ };
17
+ itemTapType: number;
18
+ shareEvent: string;
19
+ };
20
+ declare type GifsCacheState = {
21
+ gifs: Record<string, GfycatAPIItem>;
22
+ updating: boolean;
23
+ };
24
+ declare type GifsCategoriesState = {
25
+ cursor: string;
26
+ hasMore: boolean;
27
+ isFetching: boolean;
28
+ tagsDict: Record<string, boolean>;
29
+ tagsList: GfycatAPITag[];
30
+ };
31
+ declare type GifsSearchState = {
32
+ priorLocation: string | null;
33
+ resultsByTerm: Record<string, GifsResult>;
34
+ scrollPosition: number;
35
+ searchBarText: string;
36
+ searchText: string;
37
+ };
38
+ export declare type GifsResult = GfycatAPIPaginatedResponse & {
39
+ count: number;
40
+ currentPage: number;
41
+ didInvalidate: boolean;
42
+ found: number;
43
+ isFetching: boolean;
44
+ items: string[];
45
+ moreRemaining: boolean;
46
+ pages: Record<number, string[]>;
47
+ start: number;
48
+ };
49
+ export interface GfycatAPIPaginatedResponse {
50
+ cursor?: string;
51
+ gfycats: GfycatAPIItem[];
52
+ totalCount?: number;
53
+ }
54
+ export interface GfycatAPIItemResponse {
55
+ gfyItem: GfycatAPIItem;
56
+ }
57
+ export interface GfycatAPIItem {
58
+ anonymous?: boolean;
59
+ avgColor: string;
60
+ captionsUrl?: null;
61
+ content_urls: {
62
+ [key: string]: GfycatAPIContent;
63
+ };
64
+ createDate: number;
65
+ description?: string;
66
+ dislikes?: number;
67
+ domainWhitelist?: any[];
68
+ duration?: number;
69
+ encoding?: boolean;
70
+ extraLemmas?: string;
71
+ finished?: boolean;
72
+ frameRate: number;
73
+ gatekeeper: number;
74
+ geoWhitelist?: any[];
75
+ gfyId: string;
76
+ gfyName: string;
77
+ gfyNumber?: string;
78
+ gfySlug?: string;
79
+ gif100px?: string;
80
+ gifSize?: number;
81
+ gifUrl: string;
82
+ hasAudio: boolean;
83
+ hasTransparency: boolean;
84
+ height: number;
85
+ languageCategories: string[];
86
+ languageText?: string;
87
+ likes: number;
88
+ max1mbGif?: string;
89
+ max2mbGif: string;
90
+ max5mbGif: string;
91
+ md5?: string;
92
+ miniPosterUrl: string;
93
+ miniUrl?: string;
94
+ mobileHeight?: number;
95
+ mobilePosterUrl?: string;
96
+ mobileUrl: string;
97
+ mobileWidth?: number;
98
+ mp4Size?: number;
99
+ mp4Url: string;
100
+ nsfw: boolean | number;
101
+ numFrames: number;
102
+ posterUrl: string;
103
+ published: number;
104
+ rating?: string;
105
+ ratio?: null;
106
+ sitename?: string;
107
+ source?: number;
108
+ tags: string[];
109
+ thumb100PosterUrl: string;
110
+ title?: string;
111
+ type?: number;
112
+ url?: string;
113
+ userData?: GfycatAPIUser | [];
114
+ userDisplayName?: string;
115
+ userName?: string;
116
+ username?: string;
117
+ userProfileImageUrl?: string;
118
+ views: number;
119
+ views5?: number;
120
+ webmSize?: number;
121
+ webmUrl?: string;
122
+ webpUrl?: string;
123
+ width: number;
124
+ }
125
+ export interface GfycatAPIContent {
126
+ width: number;
127
+ size: number;
128
+ url: string;
129
+ height: number;
130
+ }
131
+ export interface GfycatAPIUser {
132
+ createDate?: number;
133
+ description?: string;
134
+ followers: number;
135
+ following: number;
136
+ iframeProfileImageVisible?: boolean;
137
+ name: string;
138
+ profileImageUrl: string;
139
+ profileUrl?: string;
140
+ publishedGfycats?: number;
141
+ subscription?: number;
142
+ url?: string;
143
+ userid?: string;
144
+ username: string;
145
+ verified: boolean;
146
+ views: number;
147
+ }
148
+ export interface GfycatAPITag {
149
+ tagName: string;
150
+ gfyId: string;
151
+ }
152
+ export {};
package/lib/gifs.js ADDED
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
+ // See LICENSE.txt for license information.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
package/lib/groups.d.ts CHANGED
@@ -1,6 +1,9 @@
1
1
  import { UserProfile } from './users';
2
2
  import { RelationOneToOne } from './utilities';
3
- export declare type SyncableType = 'team' | 'channel';
3
+ export declare enum SyncableType {
4
+ Team = "team",
5
+ Channel = "channel"
6
+ }
4
7
  export declare type SyncablePatch = {
5
8
  scheme_admin: boolean;
6
9
  auto_add: boolean;
@@ -27,7 +30,13 @@ export declare type Group = {
27
30
  member_count: number;
28
31
  scheme_admin: boolean;
29
32
  allow_reference: boolean;
33
+ channel_member_count?: number;
34
+ channel_member_timezones_count?: number;
30
35
  };
36
+ export declare enum GroupSource {
37
+ Ldap = "ldap",
38
+ Custom = "custom"
39
+ }
31
40
  export declare type GroupTeam = {
32
41
  team_id: string;
33
42
  team_display_name: string;
@@ -121,6 +130,8 @@ export declare type GroupSearachParams = {
121
130
  per_page: number;
122
131
  include_member_count: boolean;
123
132
  user_id?: string;
133
+ include_timezones?: string;
134
+ include_channel_member_count?: string;
124
135
  };
125
136
  export declare type GroupMembership = {
126
137
  user_id: string;
package/lib/groups.js CHANGED
@@ -2,3 +2,14 @@
2
2
  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
3
  // See LICENSE.txt for license information.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.GroupSource = exports.SyncableType = void 0;
6
+ var SyncableType;
7
+ (function (SyncableType) {
8
+ SyncableType["Team"] = "team";
9
+ SyncableType["Channel"] = "channel";
10
+ })(SyncableType = exports.SyncableType || (exports.SyncableType = {}));
11
+ var GroupSource;
12
+ (function (GroupSource) {
13
+ GroupSource["Ldap"] = "ldap";
14
+ GroupSource["Custom"] = "custom";
15
+ })(GroupSource = exports.GroupSource || (exports.GroupSource = {}));
@@ -0,0 +1,46 @@
1
+ import type { Address, Product, Invoice } from './cloud';
2
+ import { ValueOf } from './utilities';
3
+ export declare const SelfHostedSignupProgress: {
4
+ readonly START: "START";
5
+ readonly CREATED_CUSTOMER: "CREATED_CUSTOMER";
6
+ readonly CREATED_INTENT: "CREATED_INTENT";
7
+ readonly CONFIRMED_INTENT: "CONFIRMED_INTENT";
8
+ readonly CREATED_SUBSCRIPTION: "CREATED_SUBSCRIPTION";
9
+ readonly PAID: "PAID";
10
+ readonly CREATED_LICENSE: "CREATED_LICENSE";
11
+ };
12
+ export interface SelfHostedSignupForm {
13
+ first_name: string;
14
+ last_name: string;
15
+ billing_address: Address;
16
+ organization: string;
17
+ }
18
+ export interface SelfHostedSignupBootstrapResponse {
19
+ progress: ValueOf<typeof SelfHostedSignupProgress>;
20
+ email: string;
21
+ }
22
+ export interface SelfHostedSignupCustomerResponse {
23
+ customer_id: string;
24
+ setup_intent_id: string;
25
+ setup_intent_secret: string;
26
+ progress: ValueOf<typeof SelfHostedSignupProgress>;
27
+ }
28
+ export interface SelfHostedSignupSuccessResponse {
29
+ progress: ValueOf<typeof SelfHostedSignupProgress>;
30
+ license: Record<string, string>;
31
+ }
32
+ export declare type HostedCustomerState = {
33
+ products: {
34
+ products: Record<string, Product>;
35
+ productsLoaded: boolean;
36
+ };
37
+ invoices: {
38
+ invoices: Record<string, Invoice>;
39
+ invoicesLoaded: boolean;
40
+ };
41
+ errors: {
42
+ products?: true;
43
+ invoices?: true;
44
+ };
45
+ signupProgress: ValueOf<typeof SelfHostedSignupProgress>;
46
+ };
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
+ // See LICENSE.txt for license information.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.SelfHostedSignupProgress = void 0;
6
+ exports.SelfHostedSignupProgress = {
7
+ START: 'START',
8
+ CREATED_CUSTOMER: 'CREATED_CUSTOMER',
9
+ CREATED_INTENT: 'CREATED_INTENT',
10
+ CONFIRMED_INTENT: 'CONFIRMED_INTENT',
11
+ CREATED_SUBSCRIPTION: 'CREATED_SUBSCRIPTION',
12
+ PAID: 'PAID',
13
+ CREATED_LICENSE: 'CREATED_LICENSE',
14
+ };
package/lib/insights.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { ChannelType } from './channels';
2
2
  import { Post } from './posts';
3
+ import { UserProfile } from './users';
3
4
  export declare enum InsightsWidgetTypes {
4
5
  TOP_CHANNELS = "TOP_CHANNELS",
5
6
  TOP_REACTIONS = "TOP_REACTIONS",
@@ -79,7 +80,7 @@ export declare type TopBoard = {
79
80
  icon: string;
80
81
  title: string;
81
82
  activityCount: number;
82
- activeUsers: string;
83
+ activeUsers: Array<UserProfile['id']> | string;
83
84
  createdBy: string;
84
85
  };
85
86
  export declare type TopBoardResponse = {
@@ -76,6 +76,7 @@ export declare type AutocompleteSuggestion = {
76
76
  Hint: string;
77
77
  Description: string;
78
78
  IconData: string;
79
+ type?: string;
79
80
  };
80
81
  export declare type CommandAutocompleteSuggestion = AutocompleteSuggestion;
81
82
  export declare type OAuthApp = {
package/lib/plugins.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- declare type Plugin = {
1
+ export declare type PluginManifest = {
2
2
  id: string;
3
3
  name: string;
4
4
  description?: string;
@@ -15,7 +15,6 @@ declare type Plugin = {
15
15
  settings_schema?: PluginSettingsSchema;
16
16
  props?: Record<string, any>;
17
17
  };
18
- export declare type PluginManifest = Plugin;
19
18
  export declare type PluginRedux = PluginManifest & {
20
19
  active: boolean;
21
20
  };
package/lib/posts.d.ts CHANGED
@@ -2,8 +2,9 @@ import { Channel, ChannelType } from './channels';
2
2
  import { CustomEmoji } from './emojis';
3
3
  import { FileInfo } from './files';
4
4
  import { Reaction } from './reactions';
5
+ import { UserProfile } from './users';
5
6
  import { RelationOneToOne, RelationOneToMany, IDMappedObjects } from './utilities';
6
- export declare type PostType = 'system_add_remove' | 'system_add_to_channel' | 'system_add_to_team' | 'system_channel_deleted' | 'system_channel_restored' | 'system_displayname_change' | 'system_convert_channel' | 'system_ephemeral' | 'system_header_change' | 'system_join_channel' | 'system_join_leave' | 'system_leave_channel' | 'system_purpose_change' | 'system_remove_from_channel' | 'system_combined_user_activity' | 'system_fake_parent_deleted' | '';
7
+ export declare type PostType = 'system_add_remove' | 'system_add_to_channel' | 'system_add_to_team' | 'system_channel_deleted' | 'system_channel_restored' | 'system_displayname_change' | 'system_convert_channel' | 'system_ephemeral' | 'system_header_change' | 'system_join_channel' | 'system_join_leave' | 'system_leave_channel' | 'system_purpose_change' | 'system_remove_from_channel' | 'system_combined_user_activity' | 'system_fake_parent_deleted' | 'system_generic' | '';
7
8
  export declare type PostEmbedType = 'image' | 'link' | 'message_attachment' | 'opengraph' | 'permalink';
8
9
  export declare type PostEmbed = {
9
10
  type: PostEmbedType;
@@ -16,12 +17,24 @@ export declare type PostImage = {
16
17
  height: number;
17
18
  width: number;
18
19
  };
20
+ export declare type PostAcknowledgement = {
21
+ post_id: Post['id'];
22
+ user_id: UserProfile['id'];
23
+ acknowledged_at: number;
24
+ };
25
+ export declare type PostPriorityMetadata = {
26
+ priority: PostPriority | '';
27
+ requested_ack?: boolean;
28
+ persistent_notifications?: boolean;
29
+ };
19
30
  export declare type PostMetadata = {
20
31
  embeds: PostEmbed[];
21
32
  emojis: CustomEmoji[];
22
33
  files: FileInfo[];
23
34
  images: Record<string, PostImage>;
24
35
  reactions: Reaction[];
36
+ priority?: PostPriorityMetadata;
37
+ acknowledgements?: PostAcknowledgement[];
25
38
  };
26
39
  export declare type Post = {
27
40
  id: string;
@@ -44,7 +57,7 @@ export declare type Post = {
44
57
  metadata: PostMetadata;
45
58
  failed?: boolean;
46
59
  user_activity_posts?: Post[];
47
- state?: 'DELETED';
60
+ state?: PostState;
48
61
  filenames?: string[];
49
62
  last_reply_at?: number;
50
63
  participants?: any;
@@ -52,6 +65,11 @@ export declare type Post = {
52
65
  is_following?: boolean;
53
66
  exists?: boolean;
54
67
  };
68
+ export declare type PostState = 'DELETED';
69
+ export declare enum PostPriority {
70
+ URGENT = "urgent",
71
+ IMPORTANT = "important"
72
+ }
55
73
  export declare type PostList = {
56
74
  order: Array<Post['id']>;
57
75
  posts: Record<string, Post>;
@@ -95,6 +113,7 @@ export declare type PostsState = {
95
113
  channels: Record<Channel['id'], number>;
96
114
  threads: Record<Post['root_id'], number>;
97
115
  };
116
+ acknowledgements: RelationOneToOne<Post, Record<UserProfile['id'], number>>;
98
117
  };
99
118
  export declare type OpenGraphMetadataImage = {
100
119
  secure_url?: string;
@@ -129,3 +148,12 @@ export declare type TeamsUsageResponse = {
129
148
  active: number;
130
149
  cloud_archived: number;
131
150
  };
151
+ export declare type PostAnalytics = {
152
+ channel_id: string;
153
+ post_id: string;
154
+ user_actual_id: string;
155
+ root_id: string;
156
+ priority?: PostPriority | '';
157
+ requested_ack?: boolean;
158
+ persistent_notifications?: boolean;
159
+ };
package/lib/posts.js CHANGED
@@ -2,3 +2,9 @@
2
2
  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
3
  // See LICENSE.txt for license information.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.PostPriority = void 0;
6
+ var PostPriority;
7
+ (function (PostPriority) {
8
+ PostPriority["URGENT"] = "urgent";
9
+ PostPriority["IMPORTANT"] = "important";
10
+ })(PostPriority = exports.PostPriority || (exports.PostPriority = {}));
@@ -0,0 +1,7 @@
1
+ /**
2
+ * - `null` - explicitly Channels
3
+ * - `string` - uuid - any other product
4
+ */
5
+ export declare type ProductIdentifier = null | string;
6
+ /** @see {@link ProductIdentifier} */
7
+ export declare type ProductScope = ProductIdentifier | ProductIdentifier[];
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
+ // See LICENSE.txt for license information.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
package/lib/requests.d.ts CHANGED
@@ -9,6 +9,7 @@ export declare type ChannelsRequestsStatuses = {
9
9
  myChannels: RequestStatusType;
10
10
  createChannel: RequestStatusType;
11
11
  updateChannel: RequestStatusType;
12
+ getChannelsAndChannelMembers: RequestStatusType;
12
13
  };
13
14
  export declare type GeneralRequestsStatuses = {
14
15
  websocket: RequestStatusType;
@@ -50,12 +51,6 @@ export declare type RolesRequestsStatuses = {
50
51
  getRole: RequestStatusType;
51
52
  editRole: RequestStatusType;
52
53
  };
53
- export declare type JobsRequestsStatuses = {
54
- createJob: RequestStatusType;
55
- getJob: RequestStatusType;
56
- getJobs: RequestStatusType;
57
- cancelJob: RequestStatusType;
58
- };
59
54
  export declare type SearchRequestsStatuses = {
60
55
  flaggedPosts: RequestStatusType;
61
56
  pinnedPosts: RequestStatusType;
package/lib/store.d.ts CHANGED
@@ -3,6 +3,7 @@ import { Bot } from './bots';
3
3
  import { ChannelsState } from './channels';
4
4
  import { ChannelCategoriesState } from './channel_categories';
5
5
  import { CloudState, CloudUsage } from './cloud';
6
+ import { HostedCustomerState } from './hosted_customer';
6
7
  import { EmojisState } from './emojis';
7
8
  import { FilesState } from './files';
8
9
  import { GeneralState } from './general';
@@ -11,7 +12,7 @@ import { IntegrationsState } from './integrations';
11
12
  import { JobsState } from './jobs';
12
13
  import { PostsState } from './posts';
13
14
  import { PreferenceType } from './preferences';
14
- import { AdminRequestsStatuses, ChannelsRequestsStatuses, FilesRequestsStatuses, GeneralRequestsStatuses, JobsRequestsStatuses, PostsRequestsStatuses, RolesRequestsStatuses, TeamsRequestsStatuses, UsersRequestsStatuses } from './requests';
15
+ import { AdminRequestsStatuses, ChannelsRequestsStatuses, FilesRequestsStatuses, GeneralRequestsStatuses, PostsRequestsStatuses, RolesRequestsStatuses, TeamsRequestsStatuses, UsersRequestsStatuses } from './requests';
15
16
  import { Role } from './roles';
16
17
  import { SchemesState } from './schemes';
17
18
  import { SearchState } from './search';
@@ -21,6 +22,8 @@ import { Typing } from './typing';
21
22
  import { UsersState } from './users';
22
23
  import { AppsState } from './apps';
23
24
  import { InsightsState } from './insights';
25
+ import { GifsState } from './gifs';
26
+ import { WorkTemplatesState } from './work_templates';
24
27
  export declare type GlobalState = {
25
28
  entities: {
26
29
  general: GeneralState;
@@ -51,13 +54,15 @@ export declare type GlobalState = {
51
54
  pending: Set<string>;
52
55
  };
53
56
  schemes: SchemesState;
54
- gifs: any;
57
+ gifs: GifsState;
55
58
  groups: GroupsState;
56
59
  channelCategories: ChannelCategoriesState;
57
60
  apps: AppsState;
58
61
  cloud: CloudState;
62
+ hostedCustomer: HostedCustomerState;
59
63
  usage: CloudUsage;
60
64
  insights: InsightsState;
65
+ worktemplates: WorkTemplatesState;
61
66
  };
62
67
  errors: any[];
63
68
  requests: {
@@ -69,11 +74,11 @@ export declare type GlobalState = {
69
74
  admin: AdminRequestsStatuses;
70
75
  files: FilesRequestsStatuses;
71
76
  roles: RolesRequestsStatuses;
72
- jobs: JobsRequestsStatuses;
73
77
  };
74
78
  websocket: {
75
79
  connected: boolean;
76
80
  lastConnectAt: number;
77
81
  lastDisconnectAt: number;
82
+ connectionId: string;
78
83
  };
79
84
  };
package/lib/teams.d.ts CHANGED
@@ -64,6 +64,7 @@ export declare type TeamUnread = {
64
64
  msg_count_root: number;
65
65
  thread_count?: number;
66
66
  thread_mention_count?: number;
67
+ thread_urgent_mention_count?: number;
67
68
  };
68
69
  export declare type GetTeamMembersOpts = {
69
70
  sort?: 'Username';
package/lib/threads.d.ts CHANGED
@@ -17,6 +17,7 @@ export declare type UserThread = {
17
17
  unread_replies: number;
18
18
  unread_mentions: number;
19
19
  is_following: boolean;
20
+ is_urgent?: boolean;
20
21
  type?: UserThreadType;
21
22
  /**
22
23
  * only depend on channel_id and user_id for UserThread<>Channel/User mapping,
@@ -39,6 +40,7 @@ export declare type UserThreadList = {
39
40
  total: number;
40
41
  total_unread_threads: number;
41
42
  total_unread_mentions: number;
43
+ total_unread_urgent_mentions?: number;
42
44
  threads: UserThreadWithPost[];
43
45
  };
44
46
  export declare type ThreadsState = {
@@ -49,11 +51,13 @@ export declare type ThreadsState = {
49
51
  total: number;
50
52
  total_unread_threads: number;
51
53
  total_unread_mentions: number;
54
+ total_unread_urgent_mentions?: number;
52
55
  }>;
53
56
  countsIncludingDirect: RelationOneToOne<Team, {
54
57
  total: number;
55
58
  total_unread_threads: number;
56
59
  total_unread_mentions: number;
60
+ total_unread_urgent_mentions?: number;
57
61
  }>;
58
62
  };
59
63
  export {};
package/lib/users.d.ts CHANGED
@@ -71,6 +71,7 @@ export declare type UsersState = {
71
71
  stats: RelationOneToOne<UserProfile, UsersStats>;
72
72
  filteredStats?: UsersStats;
73
73
  myUserAccessTokens: Record<string, UserAccessToken>;
74
+ lastActivity: RelationOneToOne<UserProfile, number>;
74
75
  };
75
76
  export declare type UserTimezone = {
76
77
  useAutomaticTimezone: boolean | string;
@@ -23,3 +23,10 @@ export declare type IDMappedObjects<E extends {
23
23
  export declare type DeepPartial<T> = {
24
24
  [P in keyof T]?: DeepPartial<T[P]>;
25
25
  };
26
+ export declare type ValueOf<T> = T[keyof T];
27
+ /**
28
+ * Based on https://stackoverflow.com/a/49725198
29
+ */
30
+ export declare type RequireOnlyOne<T, Keys extends keyof T = keyof T> = Pick<T, Exclude<keyof T, Keys>> & {
31
+ [K in Keys]-?: Required<Pick<T, K>> & Partial<Record<Exclude<Keys, K>, undefined>>;
32
+ }[Keys];
@@ -0,0 +1,63 @@
1
+ import { RequireOnlyOne } from './utilities';
2
+ export declare type WorkTemplatesState = {
3
+ categories: Category[];
4
+ templatesInCategory: Record<string, WorkTemplate[]>;
5
+ };
6
+ export interface WorkTemplate {
7
+ id: string;
8
+ category: string;
9
+ useCase: string;
10
+ description: Description;
11
+ illustration: string;
12
+ visibility: Visibility;
13
+ content: ValidContent[];
14
+ }
15
+ export declare const categories: string[];
16
+ export interface Category {
17
+ id: typeof categories[number];
18
+ name: string;
19
+ }
20
+ export interface Channel {
21
+ id: string;
22
+ name: string;
23
+ illustration: string;
24
+ }
25
+ export interface Board {
26
+ id: string;
27
+ name: string;
28
+ illustration: string;
29
+ }
30
+ export interface Playbook {
31
+ id: string;
32
+ name: string;
33
+ illustration: string;
34
+ }
35
+ export interface Integration {
36
+ id: string;
37
+ name?: string;
38
+ icon?: string;
39
+ installed?: boolean;
40
+ }
41
+ interface Content {
42
+ channel?: Channel;
43
+ board?: Board;
44
+ playbook?: Playbook;
45
+ integration?: Integration;
46
+ }
47
+ declare type ValidContent = RequireOnlyOne<Content, 'channel' | 'board' | 'playbook' | 'integration'>;
48
+ export interface MessageWithIllustration {
49
+ message: string;
50
+ illustration?: string;
51
+ }
52
+ declare type MessageWithMandatoryIllustration = Partial<MessageWithIllustration> & Required<Pick<MessageWithIllustration, 'illustration'>>;
53
+ interface Description {
54
+ channel: MessageWithIllustration;
55
+ board: MessageWithIllustration;
56
+ playbook: MessageWithIllustration;
57
+ integration: MessageWithMandatoryIllustration;
58
+ }
59
+ export declare enum Visibility {
60
+ Public = "public",
61
+ Private = "private"
62
+ }
63
+ export {};
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
3
+ // See LICENSE.txt for license information.
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.Visibility = exports.categories = void 0;
6
+ exports.categories = ['product', 'devops', 'company_wide', 'leadership', 'design'];
7
+ var Visibility;
8
+ (function (Visibility) {
9
+ Visibility["Public"] = "public";
10
+ Visibility["Private"] = "private";
11
+ })(Visibility = exports.Visibility || (exports.Visibility = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mattermost/types",
3
- "version": "7.3.0",
3
+ "version": "7.7.0",
4
4
  "description": "Shared type definitions used by the Mattermost web app",
5
5
  "keywords": [
6
6
  "mattermost"