{ lib, ... }: { options = with lib; with types; { users.users = let userOptions = { config, ... }: { options = { email = mkOption { type = nullOr str; description = "Email address of the user."; }; fullName = mkOption { type = nullOr str; description = "Full name of the user."; }; }; }; in mkOption { type = attrsOf (submodule userOptions); }; }; }