import { getCurrentUser, getCurrentUserId, getUsers } from "./common"; import { Channel, ChannelMembership } from "../../types/channels"; import { Reaction } from "../../types/reactions"; import { GlobalState } from "../../types/store"; import { Team, TeamMembership } from "../../types/teams"; import { Group } from "../../types/groups"; import { UserProfile } from "../../types/users"; import { $Email, $ID, $Username, EmailMappedObjects, IDMappedObjects, RelationOneToMany, RelationOneToOne, UsernameMappedObjects } from "../../types/utilities"; export { getCurrentUser, getCurrentUserId, getUsers }; declare type Filters = { role?: string; inactive?: boolean; active?: boolean; roles?: string[]; channel_roles?: string[]; team_roles?: string[]; }; export declare function getUserIdsInChannels(state: GlobalState): RelationOneToMany; export declare function getUserIdsNotInChannels(state: GlobalState): RelationOneToMany; export declare function getUserIdsInTeams(state: GlobalState): RelationOneToMany; export declare function getUserIdsNotInTeams(state: GlobalState): RelationOneToMany; export declare function getUserIdsWithoutTeam(state: GlobalState): Set<$ID>; export declare function getUserIdsInGroups(state: GlobalState): RelationOneToMany; export declare function getUserStatuses(state: GlobalState): RelationOneToOne; export declare function getUserSessions(state: GlobalState): Array; export declare function getUserAudits(state: GlobalState): Array; export declare function getUser(state: GlobalState, id: $ID): UserProfile; export declare const getUsersByUsername: (a: GlobalState) => UsernameMappedObjects; export declare function getUserByUsername(state: GlobalState, username: $Username): UserProfile; export declare const getUsersByEmail: (a: GlobalState) => EmailMappedObjects; export declare function getUserByEmail(state: GlobalState, email: $Email): UserProfile; export declare const isCurrentUserSystemAdmin: (state: GlobalState) => boolean; export declare const currentUserHasAnAdminRole: (state: GlobalState) => boolean; export declare const getCurrentUserRoles: (a: GlobalState) => UserProfile['roles']; export declare type UserMentionKey = { key: string; caseSensitive?: boolean; }; export declare const getCurrentUserMentionKeys: (state: GlobalState) => Array; export declare const getProfileSetInCurrentChannel: (state: GlobalState) => Array<$ID>; export declare const getProfileSetNotInCurrentChannel: (state: GlobalState) => Array<$ID>; export declare const getProfileSetInCurrentTeam: (state: GlobalState) => Array<$ID>; export declare const getProfileSetNotInCurrentTeam: (state: GlobalState) => Array<$ID>; export declare const getProfiles: (state: GlobalState, filters: Filters) => Array; export declare function filterProfiles(profiles: IDMappedObjects, filters?: Filters, memberships?: RelationOneToOne | RelationOneToOne): IDMappedObjects; export declare function getIsManualStatusForUserId(state: GlobalState, userId: $ID): boolean; export declare const getProfilesInCurrentChannel: (state: GlobalState) => Array; export declare const getProfilesNotInCurrentChannel: (state: GlobalState) => Array; export declare const getProfilesInCurrentTeam: (state: GlobalState) => Array; export declare const getProfilesInTeam: (state: GlobalState, teamId: $ID, filters?: Filters) => Array; export declare const getProfilesNotInTeam: (state: GlobalState, teamId: $ID, filters?: Filters) => Array; export declare const getProfilesNotInCurrentTeam: (state: GlobalState) => Array; export declare const getProfilesWithoutTeam: (state: GlobalState, filters?: Filters) => Array; export declare function getStatusForUserId(state: GlobalState, userId: $ID): string; export declare function getTotalUsersStats(state: GlobalState): any; export declare function getFilteredUsersStats(state: GlobalState): any; export declare function makeSearchProfilesStartingWithTerm(): (state: GlobalState, term: string, skipCurrent?: boolean, filters?: Filters) => Array; export declare function makeSearchProfilesMatchingWithTerm(): (state: GlobalState, term: string, skipCurrent?: boolean, filters?: Filters) => Array; export declare function makeSearchProfilesInChannel(): (state: GlobalState, channelId: string, term: string, skipCurrent?: boolean, filters?: Filters | undefined) => UserProfile[]; export declare function searchProfilesInCurrentChannel(state: GlobalState, term: string, skipCurrent?: boolean): Array; export declare function searchProfilesNotInCurrentChannel(state: GlobalState, term: string, skipCurrent?: boolean): Array; export declare function searchProfilesInCurrentTeam(state: GlobalState, term: string, skipCurrent?: boolean): Array; export declare function searchProfilesInTeam(state: GlobalState, teamId: $ID, term: string, skipCurrent?: boolean, filters?: Filters): Array; export declare function searchProfilesNotInCurrentTeam(state: GlobalState, term: string, skipCurrent?: boolean): Array; export declare function searchProfilesWithoutTeam(state: GlobalState, term: string, skipCurrent?: boolean, filters?: Filters): Array; export declare const shouldShowTermsOfService: (state: GlobalState) => boolean; export declare const getUsersInVisibleDMs: (state: GlobalState) => Array; export declare function makeGetProfilesForReactions(): (state: GlobalState, reactions: Array) => Array; export declare function makeGetProfilesInChannel(): (state: GlobalState, channelId: $ID, filters?: Filters) => Array; export declare function makeGetProfilesNotInChannel(): (state: GlobalState, channelId: $ID, filters?: Filters) => Array; export declare function makeGetProfilesByIdsAndUsernames(): (state: GlobalState, props: { allUserIds: Array<$ID>; allUsernames: Array<$Username>; }) => Array; export declare function makeGetDisplayName(): (state: GlobalState, userId: $ID, useFallbackUsername: boolean) => string; export declare const getProfilesInGroup: (state: GlobalState, groupId: $ID, filters?: Filters) => Array; export declare function searchProfilesInGroup(state: GlobalState, groupId: $ID, term: string, skipCurrent?: boolean, filters?: Filters): Array;