import type { OpenGraphMetadata, Post, PostsState, PostOrderBlock, MessageHistory } from '@mattermost/types/posts'; import type { Reaction } from '@mattermost/types/reactions'; import type { UserProfile } from '@mattermost/types/users'; import type { RelationOneToOne, IDMappedObjects, RelationOneToMany } from '@mattermost/types/utilities'; import type { MMReduxAction } from 'mattermost-redux/action_types'; export declare function removeUnneededMetadata(post: Post): Post; export declare function nextPostsReplies(state: { [x in Post["id"]]: number; } | undefined, action: MMReduxAction): { [x: string]: number; }; export declare function handlePosts(state: IDMappedObjects | undefined, action: MMReduxAction): any; export declare function handlePendingPosts(state: string[] | undefined, action: MMReduxAction): string[]; export declare function postsInChannel(state: Record | undefined, action: MMReduxAction, prevPosts: IDMappedObjects, nextPosts: Record): Record; export declare function removeNonRecentEmptyPostBlocks(blocks: PostOrderBlock[]): PostOrderBlock[]; export declare function mergePostBlocks(blocks: PostOrderBlock[], posts: Record): PostOrderBlock[]; export declare function mergePostOrder(left: string[], right: string[], posts: Record): string[]; export declare function postsInThread(state: RelationOneToMany | undefined, action: MMReduxAction, prevPosts: Record): RelationOneToMany; export declare function postEditHistory(state: Post[] | undefined, action: MMReduxAction): any; export declare function reactions(state: RelationOneToOne> | undefined, action: MMReduxAction): RelationOneToOne>; export declare function acknowledgements(state: RelationOneToOne> | undefined, action: MMReduxAction): any; export declare function openGraph(state: RelationOneToOne> | undefined, action: MMReduxAction): any; export declare const zeroStateLimitedViews: { threads: {}; channels: {}; }; export declare function limitedViews(state: PostsState["limitedViews"] | undefined, action: MMReduxAction): PostsState['limitedViews']; export default function reducer(state: Partial | undefined, action: MMReduxAction): Partial | { posts: any; postsReplies: { [x: string]: number; }; pendingPostIds: string[]; postsInChannel: Record; postsInThread: RelationOneToMany; postEditHistory: any; currentFocusedPostId: any; reactions: RelationOneToOne>; openGraph: any; messagesHistory: Partial | { messages: string[] | undefined; index: Record; }; acknowledgements: any; limitedViews: { channels: Record; threads: Record; }; };