-record(pin, { level :: eensy@gpio:level(), pull :: eensy:pull(), port :: integer(), direction :: eensy@gpio:direction(), update :: gleam@option:option(fun((eensy@gpio:level()) -> nil)) }).