---@type LazySpec
return {
  "fedepujol/move.nvim",
  cmd = {
    "MoveBlock",
    "MoveHBlock",
    "MoveWord",
    "MoveLine",
  },
  keys = {
    {
      "<M-j>",
      ":MoveLine(1)<cr>",
      desc = "General | Move Line Down",
      noremap = true,
      silent = true,
    },
    {
      "<M-k>",
      ":MoveLine(-1)<cr>",
      desc = "General | Move Line Up",
      noremap = true,
      silent = true,
    },
    {
      "<M-l>",
      ":MoveWord(1)<cr>",
      desc = "General | Move Word Right",
      noremap = true,
      silent = true,
    },
    {
      "<M-h>",
      ":MoveWord(-1)<cr>",
      desc = "General | Move Word Left",
      noremap = true,
      silent = true,
    },
    {
      "<M-j>",
      ":MoveBlock(1)<cr>",
      desc = "General | Move Block Down",
      noremap = true,
      silent = true,
      mode = "v",
    },
    {
      "<M-k>",
      ":MoveBlock(-1)<cr>",
      desc = "General | Move Block Up",
      noremap = true,
      silent = true,
      mode = "v",
    },
    {
      "<M-h>",
      ":MoveHBlock(-1)<cr>",
      desc = "General | Move Block Left",
      noremap = true,
      silent = true,
      mode = "v",
    },
    {
      "<M-l>",
      ":MoveHBlock(1)<cr>",
      desc = "General | Move Block Right",
      noremap = true,
      silent = true,
      mode = "v",
    },
  },
  config = true,
}
