import { useMemo } from 'react'; import { PermissionBits } from 'librechat-data-provider'; import type { TAgentsMap } from 'librechat-data-provider'; import { useListAgentsQuery } from '~/data-provider'; import { mapAgents } from '~/utils'; export default function useAgentsMap({ isAuthenticated, }: { isAuthenticated: boolean; }): TAgentsMap | undefined { const { data: agentsList = null } = useListAgentsQuery( { requiredPermission: PermissionBits.VIEW }, { select: (res) => mapAgents(res.data), enabled: isAuthenticated, }, ); const agents = useMemo(() => { return agentsList !== null ? agentsList : undefined; }, [agentsList]); return agents; }