function u(t, r) {
  return r ? typeof r == "string" ? ` ${t}--${r}` : Array.isArray(r) ? r.reduce((e, n) => e + u(t, n), "") : Object.keys(r).reduce((e, n) => e + (r[n] ? u(t, n) : ""), "") : "";
}
function i(t) {
  return (r, e) => (r && typeof r != "string" && (e = r, r = ""), r = r ? `${t}__${r}` : t, `${r}${u(r, e)}`);
}
function c(t) {
  const r = `${t}`;
  return [r, i(r)];
}
export {
  i as createBEM,
  c as createNamespace
};
