anchor.diff:      };
     };
   
  +  promTypes.basic_auth = types.submodule {
  +    options = {
  +      username = mkOption {
  +        type = types.str;
  +        description = ''
  +          HTTP username
  +        '';
  +      };
  +      password = mkOpt types.str "HTTP password";
  +      password_file = mkOpt types.str "HTTP password file";
  +    };
  +  };
  +
     promTypes.remote_read = types.submodule {
       options = {
         url = mkOption {
  
positive.code:         The name will be used in metrics and logging in place of a generated value to help users distinguish between
          remote write configs.
        '';
        basic_auth = mkOpt (types.submodule {
          options = {
            username = mkOption {
              type = types.str;
              description = ''
                HTTP username
              '';
            };
            password = mkOpt types.str "HTTP password";
            password_file = mkOpt types.str "HTTP password file";
          };
        }) ''
          Sets the `Authorization` header on every remote write request with the
          configured username and password.
          password and password_file are mutually exclusive.
  
negative.code:         See the GCP documentation on network tags for more information: <link
          xlink:href="https://cloud.google.com/vpc/docs/add-remove-network-tags"
          />
        '';
      };
    };
  
    promTypes.http_sd_config = types.submodule {
      options = {
        url = mkOption {
          type = types.str;
          description = ''
            URL from which the targets are fetched.
          '';
        };
  
        refresh_interval = mkDefOpt types.str "60s" ''
          Refresh interval to re-query the endpoint.
        '';
  
        basic_auth = mkOpt promTypes.basic_auth ''
          Authentication information used to authenticate to the API server.
          password and password_file are mutually exclusive.
        '';
  
        proxy_url = mkOpt types.str ''
          Optional proxy URL.
        '';
  
        follow_redirects = mkDefOpt types.bool "true" ''
          Configure whether HTTP requests follow HTTP 3xx redirects.
        '';
  
        tls_config = mkOpt promTypes.tls_config ''
          Configures the scrape request's TLS settings.
        '';
      };
    };
  