function defineCachedListTable
defineCachedListTable<
Row,
Input,
>
(config: TableDefinition<Row> & { orderBy: string; dependsOn?: readonly DependsOnEntry[]; }): unknown

Define a cached "list" table in one call: build the table with defineTable, then wrap it in cachedTable whose fetchAll selects and decrypts every row in orderBy sequence. Returns the cached table plus its getAll/invalidate.

This folds the identical five-part wiring (table → decrypting query → cache → getAll → invalidate) that every simple owner-maintained list table used to repeat by hand. Callers export the returned cached object under a clean name (e.g. holidays) and reach its table / getAll() / invalidate() members directly, rather than re-wrapping each in a domain-named alias.

Type Parameters

Row
Input

Parameters

config: TableDefinition<Row> & { orderBy: string; dependsOn?: readonly DependsOnEntry[]; }

Return Type

unknown

Usage

import { defineCachedListTable } from "doc.ts";