import type { IFeeds, IMessageIPFS, IUser } from '@pushprotocol/restapi'; import React from 'react'; import type { ChatFeedsType, Web3NameListType } from '../../../types'; type ChatMessagetype = { messages: IMessageIPFS[]; lastThreadHash: string | null; }; export type ChatMainStateContextType = { selectedChatId: string | null; setSelectedChatId: (chatId: string | null) => void; chatsFeed: ChatFeedsType; setChatsFeed: (chatsFeed: ChatFeedsType) => void; setChatFeed: (id: string, newChatFeed: IFeeds) => void; requestsFeed: ChatFeedsType; setRequestsFeed: (requestsFeed: ChatFeedsType) => void; setRequestFeed: (id: string, newRequestFeed: IFeeds) => void; setWeb3Name: (id: string, web3Name: string) => void; chats: Map; setChats: (chats: Map) => void; setChat: (key: string, newChat: ChatMessagetype) => void; web3NameList: Web3NameListType; setWeb3NameList: (web3NameList: Web3NameListType) => void; connectedProfile: IUser | undefined; setConnectedProfile: (connectedProfile: IUser) => void; searchedChats: ChatFeedsType | null; setSearchedChats: (chats: ChatFeedsType | null) => void; finishedFetchingChats: boolean; finishedFetchingRequests: boolean; setFinishedFetchingChats: (flag: boolean) => void; setFinishedFetchingRequests: (flag: boolean) => void; }; export declare const ChatMainStateContext: React.Context; declare const ChatMainStateContextProvider: ({ children }: { children: React.ReactNode; }) => import("react/jsx-runtime").JSX.Element; export default ChatMainStateContextProvider;