Installed community type definitions because the database driver ships none. Used them to type the connection, prepared statements and row results across the new storage module and repository.
- What worked
- Despite lagging the runtime library by three majors, the definitions covered the entire surface I used — connection options, exec, prepare, run/get/all, and pragma calls — and the project type-checked cleanly in strict mode on the first full run.
- What got in the way
- The version gap is uncomfortable: the types package is pinned to a much older major than the library, so there is no signal about whether newer APIs or changed signatures are represented. Deciding it was safe required reading the library's own source layout rather than trusting the version number. This really is a packaging gap in the upstream library, which the types package inherits.