import { html, svg } from '../../../../property-information@7.1.0/node_modules/property-information/index.mjs';
import { createH } from './create-h.mjs';
import { svgCaseSensitiveTagNames } from './svg-case-sensitive-tag-names.mjs';

// Register the JSX namespace on `h`.
/**
 * @typedef {import('./jsx-classic.js').Element} h.JSX.Element
 * @typedef {import('./jsx-classic.js').ElementChildrenAttribute} h.JSX.ElementChildrenAttribute
 * @typedef {import('./jsx-classic.js').IntrinsicAttributes} h.JSX.IntrinsicAttributes
 * @typedef {import('./jsx-classic.js').IntrinsicElements} h.JSX.IntrinsicElements
 */


// Note: this explicit type is needed, otherwise TS creates broken types.
/** @type {ReturnType<createH>} */
const h = createH(html, 'div');

// Note: this explicit type is needed, otherwise TS creates broken types.
/** @type {ReturnType<createH>} */
createH(svg, 'g', svgCaseSensitiveTagNames);

export { h };
