import { useCallback, useEffect, useState } from 'react' import { ExtensionTypeEnum, ModelExtension, Model } from '@janhq/core' import { extensionManager } from '@/extension/ExtensionManager' export function useGetConfiguredModels() { const [loading, setLoading] = useState(false) const [models, setModels] = useState([]) const fetchModels = useCallback(async () => { setLoading(true) const models = await getConfiguredModels() setLoading(false) setModels(models) }, []) useEffect(() => { fetchModels() }, [fetchModels]) return { loading, models } } const getConfiguredModels = async (): Promise => { const models = await extensionManager .get(ExtensionTypeEnum.Model) ?.getConfiguredModels() return models ?? [] }