import { useState, useEffect } from 'react' export function useFetch(url: string) { const [data, setData] = useState(null) const [loading, setLoading] = useState(true) const [error, setError] = useState(null) useEffect(() => { fetch(url) .then(r => r.json()) .then(setData) .catch(setError) .finally(() => setLoading(false)) }, [url]) return { data, loading, error } }