import { ChangeDetectorRef, OnChanges, OnInit, SimpleChanges, TemplateRef } from '@angular/core'; import { CometChat } from '@cometchat-pro/chat'; import { States, TitleAlignment, SelectionMode, GroupsStyle, ListStyle } from "uikit-utils-lerna"; import { AvatarStyle, ListItemStyle } from 'my-cstom-package-lit'; import { Subscription } from 'rxjs'; import { CometChatThemeService } from '../../CometChatTheme.service'; import { CometChatOption } from 'uikit-resources-lerna'; /** * * CometChatGroups is a wrapper component which consists of CometChatListBaseComponent and CometChatGroupListComponent. * * @version 1.0.0 * @author CometChatTeam * @copyright © 2022 CometChat Inc. * */ export declare class CometChatGroupsComponent implements OnInit, OnChanges { private ref; private themeService; groupsRequestBuilder: CometChat.GroupsRequestBuilder; searchRequestBuilder: CometChat.GroupsRequestBuilder; subtitleView: TemplateRef; listItemView: TemplateRef; menu: TemplateRef; options: ((member: CometChat.Group) => CometChatOption[]) | null; activeGroup: CometChat.Group | null; hideSeparator: boolean; selectionMode: SelectionMode; searchPlaceholder: string; hideError: boolean; searchIconURL: string; hideSearch: boolean; title: string; onError: (error: any) => void; onSelect: (group: CometChat.Group) => void; emptyStateView: TemplateRef; errorStateView: TemplateRef; loadingIconURL: string; privateGroupIcon: string; protectedGroupIcon: string; loadingStateView: TemplateRef; emptyStateText: string; errorStateText: string; titleAlignment: TitleAlignment; selectionmodeEnum: typeof SelectionMode; state: States; statusIndicatorStyle: any; avatarStyle: AvatarStyle; groupsStyle: GroupsStyle; listItemStyle: ListItemStyle; onItemClick: (group: CometChat.Group) => void; groupsRequest: any; listStyle: ListStyle; limit: number; searchKeyword: string; timeout: any; groupsList: CometChat.Group[]; groupsListenerId: string; loggedInUser: CometChat.User | null; statusColor: any; onScrolledToBottom: any; ccGroupMemberAdded: Subscription; ccGroupLeft: Subscription; ccGroupMemberJoined: Subscription; ccGroupMemberKicked: Subscription; ccGroupMemberBanned: Subscription; ccOwnershipChanged: Subscription; ccGroupDeleted: Subscription; ccGroupCreated: Subscription; constructor(ref: ChangeDetectorRef, themeService: CometChatThemeService); ngOnChanges(changes: SimpleChanges): void; ngOnInit(): void; subscribeToEvents(): void; unsubscribeToEvents(): void; ngOnDestroy(): void; /** * @param {CometChat.Group} group */ updateGroup(group: CometChat.Group): void; /** * @param {CometChat.Group} group */ getGroupIcon: (group: CometChat.Group) => string | null | undefined; attachListeners(): void; removeListener(): void; fetchNextGroupList: () => void; /** * @param {CometChat.Group} group */ onClick: (group: CometChat.Group) => void; /** * @param {CometChat.Group} group */ getStatusIndicatorColor(group: CometChat.Group): any; /** * @param {CometChat.Group} group */ getMemberCount: (group: CometChat.Group) => string; /** * @param {CometChat.Group} group */ getActiveGroup: (group: CometChat.Group) => boolean; getRequestBuilder(): CometChat.GroupsRequest; /** * @param {CometChat.Group} group */ removeGroup(group: CometChat.Group): void; /** * addGroup * @param group */ addGroup(group: CometChat.Group): void; /** * @param {string} key */ onSearch: (key: string) => void; groupStyle: () => { height: string | undefined; width: string | undefined; background: string | undefined; border: string | undefined; borderRadius: string | undefined; }; setThemeStyle(): void; setListItemStyle(): void; setAvatarStyle(): void; setStatusStyle(): void; setGroupsStyle(): void; subtitleStyle: () => { font: string | undefined; color: string | undefined; }; }