import { type IAnalyticalBackend, type IChatThreadHistory, type IUserWorkspaceSettings } from "@gooddata/sdk-backend-spi"; import { type IChatConversationLocal, type Message } from "../../model.js"; /** * Load thread history and put it to the store. * @internal */ export declare function onThreadLoad(): Generator, void, unknown> | Generator | import("redux-saga/effects").PutEffect<{ payload: { messages: Message[]; }; type: "messages/restoreCachedMessagesAction"; }> | import("redux-saga/effects").RaceEffect | import("redux-saga/effects").TakeEffect>, void, IAnalyticalBackend & string & [results: IChatThreadHistory, { payload: undefined; type: "messages/cancelAsyncAction"; }]> | import("redux-saga/effects").PutEffect<{ payload: { error: Error; }; type: "messages/loadThreadErrorAction"; }> | import("redux-saga/effects").PutEffect<{ payload: { conversationLocalId?: string; }; type: "messages/clearConversationLoadingAction"; }> | import("redux-saga/effects").SelectEffect, void, (IChatConversationLocal | undefined) & ((IUserWorkspaceSettings & false) | (IUserWorkspaceSettings & true))>; /** * Merge backend-loaded messages with cached messages. * For each assistant message from the backend, if its content is missing semanticSearch * data but the corresponding cached message has it, the cached content is preserved. * Matching is done by the server-side interaction ID (message.id). * @internal */ export declare function mergeWithCache(backendMessages: Message[], cachedMessages: Message[]): Message[]; //# sourceMappingURL=onThreadLoad.d.ts.map