/** * `before` is `null` before anything was seen: a first render is never an arrival, or opening a * register flashes every row. A removal reports nothing. */ export declare function arrivalsSince(before: ReadonlySet | null, ids: readonly string[]): string[]; /** * The ids new since the last render, for `TableRow`'s `justArrived`, so a realtime push is visible. * `scope` is what the list is of (filter, search, page): changing it reseeds silently, so a filter * change never flashes the page. An empty render never seeds either; `settled` says the read * landed, so the first row into an empty list is an arrival. One-shot: ids leave the set next * render. */ export declare function useJustArrived(ids: readonly string[], scope?: string, settled?: boolean): ReadonlySet;