UNPKG

@wulperstudio/chat

Version:
70 lines (69 loc) 1.88 kB
import { InboxModel, MembersModel, MessageModel, RoomModel, UpgradeMessageModel, UserModel } from "../lib"; export interface InitialStateModel { user?: UserModel; rooms: Array<RoomModel>; inbox: Array<MessageModel>; members: MembersModel; selectedRoom?: { title: string; space: string; }; reciveMessageRoom: MessageModel; messageContact: MessageModel; searchMembers: MembersModel; messageGroup: UpgradeMessageModel; chatOneToOne: { chanel: string; messages: MessageModel[] | MessageModel; }; } export declare type ChatActionType = { type: "@set/user"; payload: UserModel; } | { type: "@list/rooms"; payload: Array<RoomModel>; } | { type: "@list/inbox"; payload: Array<MessageModel>; } | { type: "@list/members"; payload: MembersModel; } | { type: "@list/reciveMessageRoom"; payload: InboxModel; } | { type: "@list/messageContact"; payload: MessageModel; } | { type: "@set/searchMembers"; payload: MembersModel; } | { type: "@list/messageGroup"; payload: UpgradeMessageModel; } | { type: "@set/chatOneToOne"; payload: { chanel: string; messages: MessageModel[] | MessageModel; }; }; export declare const initialState: InitialStateModel; export declare const chatReducer: (state: InitialStateModel, { type, payload }: ChatActionType) => InitialStateModel | { reciveMessageRoom: InboxModel; user?: UserModel | undefined; rooms: Array<RoomModel>; inbox: Array<MessageModel>; members: MembersModel; selectedRoom?: { title: string; space: string; } | undefined; messageContact: MessageModel; searchMembers: MembersModel; messageGroup: UpgradeMessageModel; chatOneToOne: { chanel: string; messages: MessageModel[] | MessageModel; }; };