`module Focus_dir : sig ... end`
`module Margin : sig ... end`
`module Scroll_region : sig ... end`
`module Float_type : sig ... end`
`module Scroll_result : sig ... end`
`module Scroll : sig ... end`
`val move_focus : ('key, 'value, _) Core_kernel.Map.t ‑> 'key option ‑> Focus_dir.t ‑> ('key * 'value) option`

`move_focus` gives the next element starting from the given key in the given direction according to the order of elements in the map. If the given key is `None`, `move_focus` returns the first element in the map for direction `Next`, and the last element in the map for direction `Prev`. If the given key is already the last element in the table for direction `Next`, or the first element in the table for direction `Prev`, then `move_focus` returns `None`.