import type {ResultBlockMeta} from '~/components/aigc/drawing';
import type {ChatSession} from "~/typings/llm";

export interface HistoryItem {
  fid: string
  data_id?: string
  prompt: string
  meta: ResultBlockMeta
  images?: string[]
}

export const useHistory = defineStore('xsh_assistant_aigc_history', () => {
  const text2img = ref<HistoryItem[]>([])
  const chatSessions = ref<ChatSession[]>([])
  const setChatSessions = (sessions: ChatSession[]) => {
    chatSessions.value = sessions
  }

  return {
    text2img,
    chatSessions,
    setChatSessions,
  }
}, {
  persist: {
    storage: persistedState.localStorage
  }
})