{ lib, ... }: { validate = lib.registry.validators.uniqueValue { value = 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."; }; }; }; }