import s from "react";
import { parseMergedHandlers as c, Controller as f } from "./index-use-gesture-core.esm.js";
import { r as u, e as d, f as l, s as p, w as m, m as g, h } from "./index-actions-94b581a0.esm.js";
import { C as H, E as R } from "./index-actions-94b581a0.esm.js";
function A(n, r = {}, t, o) {
  const e = s.useMemo(() => new f(n), []);
  if (e.applyHandlers(n, o), e.applyConfig(r, t), s.useEffect(e.effect.bind(e)), s.useEffect(() => e.clean.bind(e), []), r.target === void 0)
    return e.bind.bind(e);
}
function E(n) {
  return n.forEach(u), function(t, o) {
    const {
      handlers: e,
      nativeHandlers: i,
      config: a
    } = c(t, o || {});
    return A(e, a, void 0, i);
  };
}
function M(n, r) {
  return E([d, l, p, m, g, h])(n, r || {});
}
export {
  H as ConfigResolverMap,
  R as EngineMap,
  E as createUseGesture,
  d as dragAction,
  h as hoverAction,
  g as moveAction,
  l as pinchAction,
  u as registerAction,
  p as scrollAction,
  M as useGesture,
  m as wheelAction
};
