import { Conversation, ConversationPaginationMeta, Group, Message, MessagePaginationMeta, OfflineStore, PaginatedResponse } from './types';
import { default as Fuse } from 'fuse.js';
export declare class OfflineStoreLocalStorage implements OfflineStore {
    #private;
    storePrefix: string;
    fuseConversations: Fuse<Conversation>;
    fuseMessages: Fuse<Message>;
    constructor(storePrefix?: string);
    getGroupMessages(groupId: string, pagination: MessagePaginationMeta): PaginatedResponse<Message>;
    getThreadMessages(parentId: string, pagination: MessagePaginationMeta): PaginatedResponse<Message>;
    getMessage(messageId: string): {
        data: Message;
    };
    saveMessages(messages: Message[]): void;
    purgeMessages(keepByConversationIds: string[]): void;
    getConversations(pagination: ConversationPaginationMeta): PaginatedResponse<Conversation>;
    saveConversations(conversations: Conversation[]): void;
    purgeConversations(keepConversationIds: string[]): void;
    getGroup(groupId: string): Group | null;
    saveGroup(group: Group): void;
    purgeGroups(keepGroupIds: string[]): void;
}
