UNPKG

react-native-chating-ui-kit

Version:

CometChat React Native UI Kit is a collection of custom UI Components designed to build text , chat and calling features in your application. The UI Kit is developed to keep developers in mind and aims to reduce development efforts significantly

138 lines (137 loc) 3.77 kB
import React from "react"; import { CometChat } from "@cometchat-pro/react-native-chat"; import { GroupsStyleInterface } from "./GroupsStyle"; import { ListItemStyleInterface } from "../shared"; import { ImageType } from "../shared"; import { SelectionMode } from "../shared/base/Types"; import { CometChatOptions } from "../shared/modals/CometChatOptions"; import { AvatarStyleInterface } from "../shared/views/CometChatAvatar/AvatarStyle"; import { StatusIndicatorStyleInterface } from "../shared/views/CometChatStatusIndicator/StatusIndicatorStyle"; export interface CometChatGroupsInterface { /** * Custom subtitle view */ SubtitleView?: (item: CometChat.Group) => JSX.Element; /** * Custom list item view */ ListItemView?: (item: CometChat.Group) => JSX.Element; /** * pass compoent for menu, will be shown at top right side */ AppBarOption?: () => JSX.Element; /** * Pass array of CometChatOptions type * Tobe shown on swipe of list item */ options?: (item: CometChat.Group) => CometChatOptions[]; /** * toggle the seperator */ hideSeperator?: boolean; /** * styles for groups */ groupsStyle?: GroupsStyleInterface; /** * styles for list item */ listItemStyle?: ListItemStyleInterface; /** * styles for avatar */ avatarStyle?: AvatarStyleInterface; /** * styles for status indicator */ statusIndicatorStyle?: StatusIndicatorStyleInterface; /** * search placeholder text */ searchPlaceHolderText?: string; /** * back button icon */ backButtonIcon?: ImageType; /** * toggle back button */ showBackButton?: boolean; /** * select items pass "none" | "single" | "multitple" */ selectionMode?: SelectionMode; /** * call back on seleciton is done */ onSelection?: (items: Array<CometChat.Group>) => void; /** * icon for search box */ searchBoxIcon?: ImageType; /** * toggle seearch box */ hideSearch?: boolean; /** * title to be shown default "Groups" */ title?: string; /** * Custom Functional component for empty state */ EmptyStateView?: () => JSX.Element; /** * text to be shown in case no groups found. */ emptyStateText?: string; /** * Custom functional component for error state. */ ErrorStateView?: () => JSX.Element; /** * text to be shown in case error occured while fetching gounps for first time */ errorStateText?: string; /** * Custom image for loading state. */ LoadingStateView?: () => JSX.Element; /** * Request builder to fetch groups. */ groupRequestBuilder?: CometChat.GroupsRequestBuilder; /** * request builder for search */ searchRequestBuilder?: CometChat.GroupsRequestBuilder; /** * pass icon for private group */ privateGroupIcon?: ImageType; /** * pass icon for password group */ passwordGroupIcon?: ImageType; /** * toogle error visibility */ hideError?: boolean; /** * function tobe called on group pressed. */ onItemPress?: (item: CometChat.Group) => void; /** * function tobe called on group long pressed. */ onItemLongPress?: (item: CometChat.Group) => void; /** * function will be called when error occured. */ onError?: (e: CometChat.CometChatException) => void; /** * function will be called when back button pressed. */ onBack?: () => void; } export declare const CometChatGroups: React.ForwardRefExoticComponent<CometChatGroupsInterface & React.RefAttributes<unknown>>;