{ lib, namespace, ... }:
with lib;
{
  options.${namespace}.services.crowdsec = {
    enable = mkEnableOption "crowdsec service";

    port = mkOption {
      type = types.port;
      default = 8080;
      description = "Port for crowdsec API";
    };

    openFirewall = mkOption {
      type = types.bool;
      default = true;
      description = "Whether to open firewall for crowdsec";
    };

    apiAddress = mkOption {
      type = types.str;
      default = "127.0.0.1";
      description = "API address for crowdsec";
    };

    apiKey = mkOption {
      type = types.str;
      default = "";
      description = "API key for crowdsec bouncer";
    };

    dataDir = mkOption {
      type = types.str;
      default = "";
      description = "Data directory for crowdsec";
    };
  };
}
