Implementa in TypeScript un hook `usePage` che accetta un URL, carica i dati dell'utente, restituisce `data`, `loading` e `error`, ripete la richiesta al cambiare URL e annulla correttamente la richiesta durante lo smontaggio del componente o il cambio di URL.