import { ChatSettingsStyles } from './styles'; import { ChatAvatarsProps } from './ChatAvatars/props'; import { PeopleSettingsProps } from './PeopleSettings/props'; import { PhotosSettingsProps } from './PhotosSettings/props'; import { OptionsSettingsProps } from './OptionsSettings/props'; import { ChatObject, PersonObject } from '../../../interfaces'; export interface ChatSettingsProps extends ChatSettingsStyles { chat?: ChatObject; peopleToInvite?: Array; username?: string; // State isLoading?: boolean; // Hooks onDeleteChatClick?: (chat: ChatObject) => Promise; onInvitePersonClick?: (person: PersonObject) => Promise; onRemovePersonClick?: (person: PersonObject) => Promise; // Render Functions renderChatSettings?: ( props: ChatSettingsProps ) => JSX.Element | Element | React.FC; renderChatAvatars?: ( props: ChatAvatarsProps ) => JSX.Element | Element | React.FC; renderPeopleSettings?: ( props: PeopleSettingsProps ) => JSX.Element | Element | React.FC; renderPhotosSettings?: ( props: PhotosSettingsProps ) => JSX.Element | Element | React.FC; renderOptionsSettings?: ( props: OptionsSettingsProps ) => JSX.Element | Element | React.FC; }