import { PayloadAction } from "@reduxjs/toolkit";
import { ConversationState } from "../models/slices/ConversationState";
import { Message, MessageNotes } from "@yext/chat-core";
export declare const initialState: ConversationState;
export declare function getStateLocalStorageKey(hostname: string, botId: string): string;
/**
 * Loads the {@link ConversationState} from local storage.
 */
export declare const loadSessionState: (botId: string) => ConversationState;
export declare const saveSessionState: (botId: string, state: ConversationState) => ConversationState | undefined;
/**
 * Registers with Redux the slice of {@link State} pertaining to the loading status
 * of Chat Headless.
 */
export declare const conversationSlice: import("@reduxjs/toolkit").Slice<ConversationState, {
    setConversationId: (state: ConversationState, action: PayloadAction<string | undefined>) => void;
    setMessages: (state: ConversationState, action: PayloadAction<Message[]>) => void;
    addMessage: (state: ConversationState, action: PayloadAction<Message>) => void;
    setMessageNotes: (state: ConversationState, action: PayloadAction<MessageNotes>) => void;
    setIsLoading: (state: ConversationState, action: PayloadAction<boolean>) => void;
    setCanSendMessage: (state: ConversationState, action: PayloadAction<boolean>) => void;
}, "conversation">;
export declare const setMessages: import("@reduxjs/toolkit").ActionCreatorWithPayload<Message[], "conversation/setMessages">, addMessage: import("@reduxjs/toolkit").ActionCreatorWithPayload<Message, "conversation/addMessage">, setMessageNotes: import("@reduxjs/toolkit").ActionCreatorWithPayload<MessageNotes, "conversation/setMessageNotes">, setIsLoading: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, "conversation/setIsLoading">, setConversationId: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<string | undefined, "conversation/setConversationId">, setCanSendMessage: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, "conversation/setCanSendMessage">;
declare const _default: import("redux").Reducer<ConversationState>;
export default _default;
//# sourceMappingURL=conversation.d.ts.map