Canonical query contract for the admin user list surface.
Summary
Types
@type row() :: %{ user: struct(), display_name: String.t() | nil, last_active_at: DateTime.t() | nil, has_mfa: boolean(), passkey_count: non_neg_integer(), organization_count: non_neg_integer(), organization_summary: String.t(), extra_badges: list(), extra_columns: list() }
Functions
@spec list_users(map(), Sigra.Admin.Scope.t(), map() | keyword() | nil) :: {:ok, {[row()], Flop.Meta.t(), map()}} | {:error, Flop.Meta.t()}
@spec normalize_params(map() | keyword() | nil) :: {:ok, map()} | {:error, Flop.Meta.t()}
@spec summary_counts(map(), Sigra.Admin.Scope.t()) :: map()