{pkgs, config, lib, ...}:
let
  hyprctl = "${pkgs.hyprland}/bin/hyprctl";
in
{
  config = {
    services.fusuma = {
      enable = true;
      settings = {
        swipe = {
          "3" = {
            up = {
              command = "exec ${hyprctl} dispatch fullscreen 1";
            };

            down = {
              command = "exec ${lib.getExe config.nix-config.launcher}";
            };
          };
        };

        pinch = {
          "4" = {
            "in" = {
              command = "exec ${hyprctl} dispatch togglespecialworkspace magic";
            };
            "out" = {
              command = "exec ${hyprctl} dispatch togglespecialworkspace magic";
            };
          };
        };


        hold = {
          "5" = {
            command = "exec ${lib.getExe config.nix-config.launcher}";
            threshold = 0.1;
          };
        };

        threshold = {
          pinch = 0.1;
        };
      };
    };
  };
}
