@talkjs/react-native
Version:
Official TalkJS SDK for React Native
41 lines • 1.87 kB
TypeScript
import type Talk from 'talkjs';
import type { ReactNode } from 'react';
import React from 'react';
import type { _ConversationBuilder as ConversationBuilder } from './ConversationBuilder';
import { BLUR_EVENT, FOCUS_EVENT, SELECT_CONVERSATION_EVENT } from './constants';
export interface SelectConversationEvent {
me: Talk.UserSnapshot;
others: Array<Talk.UserSnapshot>;
conversation: Talk.ConversationData;
}
interface ConversationListProp {
disableZoom?: boolean;
loadingComponent?: ReactNode;
feedFilter?: Talk.ConversationPredicate;
showFeedHeader?: boolean;
presence?: Talk.UserPresence;
theme?: string | Talk.ThemeOptions;
hideKeyboardAccessoryView?: boolean;
customEmojis?: {
[name: string]: Talk.CustomEmojiDefinition;
};
translateConversations?: boolean | 'auto' | string[] | ConversationBuilder[];
onSelectConversation?: (event: SelectConversationEvent) => void;
/** @deprecated since version 0.3.0 */
thirdparties?: Talk.ThirdPartyOptions;
/** @deprecated since version 0.3.0 */
onBlur?: (event: Talk.BlurEvent) => void;
/** @deprecated since version 0.3.0 */
onFocus?: (event: Talk.FocusEvent) => void;
/** @deprecated since version 0.3.0 */
feedConversationTitleMode?: 'participants' | 'subject' | 'auto';
}
type ConversationListEvent = typeof SELECT_CONVERSATION_EVENT | typeof BLUR_EVENT | typeof FOCUS_EVENT;
export interface ConversationListRef {
setTranslationEnabledDefault: (enabled: boolean | 'auto') => void;
/** @deprecated since version 0.7.0 */
off: (event: ConversationListEvent) => void;
}
declare const forwardedConversationList: React.ForwardRefExoticComponent<ConversationListProp & React.RefAttributes<ConversationListRef>>;
export { forwardedConversationList as ConversationList };
//# sourceMappingURL=ConversationList.d.ts.map