Reverts 2428f44. The .d.ts files beside the JS modules and the
annotations threaded through src/ to satisfy noImplicitAny go;
tsconfig turns noImplicitAny off instead. The JS modules become
TypeScript in the next commit, so their types come from inference.
Kept from that commit, since they're runtime fixes rather than types:
- OrganizationDetail's website and email pills get an href and label
(they arrive as bare strings, not link objects).
- The chapter map falls back to FALLBACK_COLOR for a region with no
colour instead of painting its tiles black.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Adds .d.ts declarations beside the untyped JS modules imported from
TS (api.js, navConfig.js, adminSchema.js, adminNav.js, src/data/*),
with shapes taken from the server routes and migrations. get/post/
patch/del now return unknown unless the caller names the response.
Fixes found along the way:
- website/email/instagram are bare strings from splitLinks, not Link
objects; OrganizationDetail's website and email pills rendered with
no href or label and now link correctly.
- The chapter map falls back to FALLBACK_COLOR for a region with no
colour instead of painting its tiles black.
Adds defineSection() so each page manifest entry's props are checked
against its own Component.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>