{ lib, pkgsMaster, ... }: { options.module.dpi.bypass = { enable = lib.mkEnableOption "the Zapret DPI bypass service."; package = lib.mkPackageOption pkgsMaster "zapret" { }; params = lib.mkOption { default = [ ]; type = with lib.types; listOf str; }; whitelist = lib.mkOption { default = [ ]; type = with lib.types; listOf str; }; blacklist = lib.mkOption { default = [ ]; type = with lib.types; listOf str; }; qnum = lib.mkOption { default = 200; type = lib.types.int; }; configureFirewall = lib.mkOption { default = true; type = lib.types.bool; }; httpSupport = lib.mkOption { default = true; type = lib.types.bool; }; httpMode = lib.mkOption { default = "first"; type = lib.types.enum [ "first" "full" ]; }; udpSupport = lib.mkOption { default = false; type = lib.types.bool; }; udpPorts = lib.mkOption { default = [ ]; type = with lib.types; listOf str; }; }; }