function transformValue(
  key: string,
  rawValue: string | number,
  options: StyleXOptions,
): string {
  const value =
    typeof rawValue === 'number'
      ? String(Math.round(rawValue * 10000) / 10000) + getNumberSuffix(key)
      : rawValue;

  if (
    (key === 'content' ||
      key === 'hyphenateCharacter' ||
      key === 'hyphenate-character') &&
    typeof value === 'string'
  ) {
    const val = value.trim();

    const cssContentFunctions = [
      'attr(',
      'counter(',
      'counters(',
      'url(',
      'linear-gradient(',
      'image-set(',
      'var(--',
    ];

    const cssContentKeywords = new Set([
      'normal',
      'none',
      'open-quote',
      'close-quote',
      'no-open-quote',
      'no-close-quote',
      'inherit',
      'initial',
      'revert',
      'revert-layer',
      'unset',
    ]);

    const isCssFunction = cssContentFunctions.some((func) =>
      val.includes(func),
    );
    const isKeyword = cssContentKeywords.has(val);
    const hasMatchingQuotes =
      (val.match(/"/g)?.length ?? 0) >= 2 ||
      (val.match(/'/g)?.length ?? 0) >= 2;

    if (isCssFunction || isKeyword || hasMatchingQuotes) {
      return val;
    }
    return `"${val}"`;
  }

  return normalizeValue(value, key, options);
}
Convert a CSS value in JS to the final CSS string value