-record(rate_limiter_builder, { per_second :: gleam@option:option(fun((any()) -> integer())), burst_limit :: gleam@option:option(fun((any()) -> integer())), identifier :: gleam@option:option(fun((any()) -> any())), on_limit_exceeded :: gleam@option:option(fun((any()) -> any())), max_idle_ms :: gleam@option:option(integer()), store :: gleam@option:option(glimit@bucket:store()) }).