UNPKG

stream-chat-react

Version:

React components to create chat conversations or livestream style chat

85 lines 2.91 kB
import type { Reducer } from 'react'; import type { Channel, MessageResponse, ChannelState as StreamChannelState } from 'stream-chat'; import type { ChannelState, StreamMessage } from '../../context/ChannelStateContext'; import type { DefaultStreamChatGenerics } from '../../types/types'; export declare type ChannelStateReducerAction<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = { type: 'closeThread'; } | { type: 'clearHighlightedMessage'; } | { channel: Channel<StreamChatGenerics>; type: 'copyMessagesFromChannel'; parentId?: string | null; } | { channel: Channel<StreamChatGenerics>; type: 'copyStateFromChannelOnEvent'; } | { hasMoreNewer: boolean; highlightedMessageId: string; type: 'jumpToMessageFinished'; } | { channel: Channel<StreamChatGenerics>; type: 'initStateFromChannel'; } | { hasMore: boolean; messages: StreamMessage<StreamChatGenerics>[]; type: 'loadMoreFinished'; } | { hasMoreNewer: boolean; messages: StreamMessage<StreamChatGenerics>[]; type: 'loadMoreNewerFinished'; } | { threadHasMore: boolean; threadMessages: Array<ReturnType<StreamChannelState<StreamChatGenerics>['formatMessage']>>; type: 'loadMoreThreadFinished'; } | { channel: Channel<StreamChatGenerics>; message: StreamMessage<StreamChatGenerics>; type: 'openThread'; } | { error: Error; type: 'setError'; } | { loadingMore: boolean; type: 'setLoadingMore'; } | { loadingMoreNewer: boolean; type: 'setLoadingMoreNewer'; } | { message: StreamMessage<StreamChatGenerics>; type: 'setThread'; } | { channel: Channel<StreamChatGenerics>; type: 'setTyping'; } | { type: 'startLoadingThread'; } | { channel: Channel<StreamChatGenerics>; message: MessageResponse<StreamChatGenerics>; type: 'updateThreadOnEvent'; } | { type: 'jumpToLatestMessage'; }; export declare type ChannelStateReducer<StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics> = Reducer<ChannelState<StreamChatGenerics>, ChannelStateReducerAction<StreamChatGenerics>>; export declare const channelReducer: <StreamChatGenerics extends DefaultStreamChatGenerics = DefaultStreamChatGenerics>(state: ChannelState<StreamChatGenerics>, action: ChannelStateReducerAction<StreamChatGenerics>) => ChannelState<StreamChatGenerics>; export declare const initialState: { error: null; hasMore: boolean; hasMoreNewer: boolean; loading: boolean; loadingMore: boolean; members: {}; messages: never[]; pinnedMessages: never[]; read: {}; suppressAutoscroll: boolean; thread: null; threadHasMore: boolean; threadLoadingMore: boolean; threadMessages: never[]; threadSuppressAutoscroll: boolean; typing: {}; watcherCount: number; watchers: {}; }; //# sourceMappingURL=channelState.d.ts.map