When to use
- Inside AlphscanProvider.
- When you need a paginated list of tokens with loading/error state and page control.
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Paginated token list hook
function useTokens(options?: UseTokensOptions): UseTokensResult
| Option | Type | Default | Description |
|---|---|---|---|
| page | number | 0 | Initial page (0-based). |
| pageSize | number | 20 | Page size. |
| enabled | boolean | true | If false, no request is sent. |
| Field | Type | Description |
|---|---|---|
| tokens | TokenEntry[] | Current page of tokens. |
| total | number | Total count. |
| page | number | Current page (0-based). |
| pageSize | number | Page size. |
| totalPages | number | Total pages. |
| loading | boolean | Request in progress. |
| error | Error or null | Error if request failed. |
| setPage | (page: number) => void | Set current page (triggers refetch). |
| refetch | () => Promise<void> | Refetch current page. |
import { useTokens } from "@alphscan/sdk-react";
function TokenList() {
const { tokens, total, page, setPage, totalPages, pageSize, loading, error } =
useTokens({ pageSize: 20, enabled: true });
const offset = page * pageSize;
if (loading) return <p>Loading…</p>;
if (error) return <p>Error: {error.message}</p>;
return (
<div>
<ul>
{tokens.map((t) => (
<li key={t.id}>{t.symbol} – {t.name}</li>
))}
</ul>
<p>Page {page + 1} / {totalPages} ({total} total)</p>
<button onClick={() => setPage(page - 1)} disabled={page === 0}>Prev</button>
<button onClick={() => setPage(page + 1)} disabled={page >= totalPages - 1}>Next</button>
</div>
);
}
