import { RefObject } from "react"; import { MessageItem } from "@droppii-org/wasm-client-sdk"; export declare const MESSAGE_LIST_BOTTOM_THRESHOLD = -5; export interface MessageListLoadState { initLoading: boolean; hasMoreOld: boolean; hasMoreNew: boolean; messageList: MessageItem[]; } interface UseMessageListScrollParams { conversationId?: string; userId?: string; isGroupChat?: boolean; loadState: MessageListLoadState; latestLoadState: RefObject; moreOldLoading: boolean; moreNewLoading: boolean; getMoreOldMessages: () => void | Promise; getMoreNewMessages: () => void | Promise; /** Holds mark-as-read back while the first-unread lookup is still pending. */ markAsReadBlocked?: boolean; /** Tells the user a search jump target was recalled (deduped with the search load). */ notifyRevokedTarget?: (clientMsgID: string) => void; } export declare const useMessageListScroll: ({ conversationId, userId, isGroupChat, loadState, latestLoadState, moreOldLoading, moreNewLoading, getMoreOldMessages, getMoreNewMessages, markAsReadBlocked, notifyRevokedTarget, }: UseMessageListScrollParams) => { scrollRef: RefObject; handleMarkConversationMessageAsRead: () => void; loadMoreOldMessage: () => void; handleInfiniteScroll: (e: React.UIEvent) => void; scrollToBottom: () => void; scrollToBottomIfAtBottom: () => void; scrollToMessage: (clientMsgID: string) => void; }; export {}; //# sourceMappingURL=useMessageListScroll.d.ts.map