/** * ROWS UNDER A DAY — the one fold of a set into days, for `Timeline` and `CalendarAgenda`. The day * head stays with each device. */ export interface DayRun { /** An ISO date, so runs sort as text. */ day: string; rows: readonly T[]; } /** * Ascending, each day's rows in `order`. A `null` day is dropped. Ties break on arrival; sorts run * over copies. */ export declare function dayRuns(rows: readonly T[], day: (row: T) => string | null, order?: (a: T, b: T) => number): DayRun[]; /** * Local, never `toISOString`, which is UTC and files pre-07:00 events east of Greenwich under the * previous day. */ export declare function dayKey(date: Date): string; /** * Every day of a window, inclusive, so a register whose rows are days draws the gaps it is read * for. Empty when an end is not a date or the window is inverted. Walked at noon so a DST step * lands on the next day. */ export declare function calendarDays(from: string, to: string): string[];