{
  lib,
  helpers,
  config,
  pkgs,
  ...
}:
with lib; let
  cfg = config.plugins.friendly-snippets;
in {
  meta.maintainers = [maintainers.GaetanLepage];

  options.plugins.friendly-snippets = {
    enable = mkEnableOption "friendly-snippets";

    package = helpers.mkPackageOption "friendly-snippets" pkgs.vimPlugins.friendly-snippets;
  };

  config = mkIf cfg.enable {
    extraPlugins = [cfg.package];

    # Simply add an element to the `fromVscode` list to trigger the import of friendly-snippets
    plugins.luasnip.fromVscode = [{}];
  };
}