//#region src/dashboard-display.d.ts /** * Orthogonal intents (updated 2026-07-28 Asia/Shanghai): * 1. Select bounded Dashboard rows with deterministic ordering. * 2. Resolve archive dates identically across Server and browser/static consumers. * 3. Apply the objective bounded archive-range policy without owning UI state. * * Original request (2026-07-28): replace Dashboard Workflow Progress with ReadonlyKanban. */ declare const DASHBOARD_RECENT_LIST_LIMIT = 10; type DashboardArchiveRange = '7d' | '30d' | '90d' | 'all'; interface DashboardArchiveTimeSource { id: string; updatedAt: number; } /** Parse a valid UTC calendar date from an archive id prefix. */ declare function parseDatedArchiveIdTimestamp(id: string): number | null; /** Resolve the archive timestamp from its dated id, then its physical update time. */ declare function resolveArchiveTimestamp(archive: DashboardArchiveTimeSource): number; /** Test whether an archive belongs to a user-selected trailing range. */ declare function isArchiveInRange(archive: DashboardArchiveTimeSource, range: DashboardArchiveRange, now?: number): boolean; interface DashboardRecentListItem { id: string; updatedAt: number; } declare function compareDashboardItemsByUpdatedAt(left: T, right: T): number; declare function sortDashboardItemsByUpdatedAt(items: readonly T[]): T[]; declare function selectRecentDashboardItems(items: readonly T[], limit?: number): T[]; /** Select recent archives by objective archive time rather than incidental directory mtime. */ declare function selectRecentDashboardArchives(items: readonly T[], limit?: number): T[]; //#endregion export { DASHBOARD_RECENT_LIST_LIMIT, DashboardArchiveRange, DashboardArchiveTimeSource, DashboardRecentListItem, compareDashboardItemsByUpdatedAt, isArchiveInRange, parseDatedArchiveIdTimestamp, resolveArchiveTimestamp, selectRecentDashboardArchives, selectRecentDashboardItems, sortDashboardItemsByUpdatedAt };