import { jsxs as h, jsx as d } from "react/jsx-runtime";
import "react";
import a from "./index-Header.module.scss.js";
import { ComponentContainer as l } from "./index-ComponentContainer.js";
import { Text as i, FontWeights as g, TextTypes as e } from "./index-Text.js";
import w from "./index-_virtual4.js";
var o;
(function(r) {
  r.pageHeader = "pageHeader", r.drawerHeader = "drawerHeader", r.compactDrawerHeader = "compactDrawerHeader", r.bamHeader = "bamHeader", r.bamWithPreviewHeader = "bamWithPreviewHeader", r.sectionHeader = "sectionHeader", r.compactSectionHeader = "compactSectionHeader";
})(o || (o = {}));
const P = (r) => {
  const {
    title: s,
    description: c,
    type: t,
    replacements: n,
    testId: m
  } = r, H = () => {
    switch (t) {
      case "pageHeader":
        return e.heading3;
      case "drawerHeader":
        return e.heading3;
      case "compactDrawerHeader":
        return e.textIntro;
      case "bamHeader":
        return e.heading1;
      case "bamWithPreviewHeader":
        return e.heading2;
      case "sectionHeader":
        return e.heading4;
      case "compactSectionHeader":
        return e.textIntro;
      default:
        return e.heading3;
    }
  }, p = () => {
    switch (t) {
      case "pageHeader":
        return a.pageHeader;
      case "drawerHeader":
        return a.drawerHeader;
      case "compactDrawerHeader":
        return a.compactDrawerHeader;
      case "bamHeader":
        return a.bamHeader;
      case "bamWithPreviewHeader":
        return a.bamWithPreviewHeader;
      case "sectionHeader":
        return a.sectionHeader;
      case "compactSectionHeader":
        return a.compactSectionHeader;
      default:
        return a.pageHeader;
    }
  }, u = () => {
    switch (t) {
      case "bamHeader":
      case "pageHeader":
      case "sectionHeader":
        return e.text;
      default:
        return e.textHelp;
    }
  };
  return h(l, {
    className: w(a.header, p()),
    testId: m + "_Header",
    children: [d(i, {
      type: H(),
      fontWeight: g.bold,
      replacements: n,
      children: s
    }), c ? d(i, {
      type: u(),
      replacements: n,
      children: c
    }) : null]
  });
};
export {
  P as Header,
  o as HeaderTypes
};
