"use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/utils/toReactNodes/nodes.tsx
var _lodashes = require('lodash-es');
function isLinkNode(node) {
  return Boolean(node && _lodashes.isObject.call(void 0, node) && "link" in node);
}
function isNextLinkNode(node) {
  return Boolean(node && _lodashes.isObject.call(void 0, node) && "nextLink" in node);
}
function isIconNode(node) {
  return Boolean(node && _lodashes.isObject.call(void 0, node) && "icon" in node);
}
function isCurrencyAmountNode(node) {
  return Boolean(node && _lodashes.isObject.call(void 0, node) && "currencyAmount" in node);
}
function isClipboardTextFieldNode(node) {
  return Boolean(node && _lodashes.isObject.call(void 0, node) && "clipboardTextField" in node);
}
function isTextNode(node) {
  const allowedKeys = ["text", "onClick", "typography"];
  return Boolean(
    /* Exclude other nodes by ensuring only text node properties: */
    node && _lodashes.isObject.call(void 0, node) && /* text is required: */
    "text" in node && /* ensure the rest of the keys are allowed: */
    Object.keys(node).every((key) => allowedKeys.includes(key))
  );
}
var link = (link2) => ({ link: link2 });
var nextLink = (nextLink2) => ({
  nextLink: nextLink2
});
var currencyAmount = (currencyAmount2) => ({ currencyAmount: currencyAmount2 });
var icon = (icon2) => ({ icon: icon2 });
var clipboardTextField = (clipboardTextField2) => ({ clipboardTextField: clipboardTextField2 });













exports.isLinkNode = isLinkNode; exports.isNextLinkNode = isNextLinkNode; exports.isIconNode = isIconNode; exports.isCurrencyAmountNode = isCurrencyAmountNode; exports.isClipboardTextFieldNode = isClipboardTextFieldNode; exports.isTextNode = isTextNode; exports.link = link; exports.nextLink = nextLink; exports.currencyAmount = currencyAmount; exports.icon = icon; exports.clipboardTextField = clipboardTextField;
