{ lib, ... }: { checks = [ { assertion = lib.registry.predicates.uniqueValue (entry: entry.value.domain); message = "Route domains must be unique."; } ]; type = lib.types.submodule { options = { domain = lib.mkOption { type = lib.types.str; example = "files.alexion.dev"; description = "Public domain served by this reverse-proxy route entry."; }; port = lib.mkOption { type = lib.types.ints.between 1 65535; example = 3923; description = "Backend TCP port served by the matching address registry entry."; }; }; }; }