// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. import {Audit} from './audits'; import {Compliance} from './compliance'; import {AdminConfig, EnvironmentConfig} from './config'; import {MixedUnlinkedGroupRedux} from './groups'; import {PluginRedux, PluginStatusRedux} from './plugins'; import {SamlCertificateStatus, SamlMetadataResponse} from './saml'; import {Team} from './teams'; import {UserAccessToken, UserProfile} from './users'; import {Dictionary, RelationOneToOne} from './utilities'; export type ConsoleAccess = { read: Record; write: Record; } export type AdminState = { logs: Array; audits: Dictionary; config: Partial; environmentConfig: Partial; complianceReports: Dictionary; ldapGroups: Dictionary; ldapGroupsCount: number; userAccessTokens: Dictionary; clusterInfo: ClusterInfo[]; samlCertStatus?: SamlCertificateStatus; analytics?: Dictionary; teamAnalytics?: RelationOneToOne>; userAccessTokensForUser?: RelationOneToOne>; plugins?: Dictionary; pluginStatuses?: Dictionary; samlMetadataResponse?: SamlMetadataResponse; }; export type ClusterInfo = { id: string; version: string; config_hash: string; ipaddress: string; hostname: string; }; export type AnalyticsRow = { name: string; value: number; };