igloo-d2c-components 1.0.8 → 1.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +8 -0
  2. package/dist/assets/icons/alert.svg +5 -0
  3. package/dist/assets/icons/arrow-down.svg +3 -0
  4. package/dist/assets/icons/arrow.svg +9 -0
  5. package/dist/assets/icons/close.svg +4 -0
  6. package/dist/assets/icons/facebook.svg +3 -0
  7. package/dist/assets/icons/index.ts +26 -0
  8. package/dist/assets/icons/instagram.svg +11 -0
  9. package/dist/assets/icons/youtube.svg +11 -0
  10. package/dist/assets/index.ts +13 -0
  11. package/dist/assets/tenants/ammetlife/logo.svg +10 -0
  12. package/dist/assets/tenants/cimb/logo-white.png +0 -0
  13. package/dist/assets/tenants/cimb/logo.svg +62 -0
  14. package/dist/assets/tenants/igloo/logo.svg +22 -0
  15. package/dist/cjs/index.js +2125 -38
  16. package/dist/cjs/index.js.map +1 -0
  17. package/dist/esm/index.js +2084 -38
  18. package/dist/esm/index.js.map +1 -0
  19. package/dist/types/assets/icons/index.d.ts +21 -0
  20. package/dist/types/assets/index.d.ts +9 -0
  21. package/dist/types/components/BillingToggle/BillingToggle.d.ts +34 -0
  22. package/dist/types/components/BillingToggle/index.d.ts +3 -0
  23. package/dist/types/components/BillingToggle/styled.d.ts +12 -0
  24. package/dist/types/components/CoverageAmountSlider/CoverageAmountSlider.d.ts +53 -0
  25. package/dist/types/components/CoverageAmountSlider/index.d.ts +3 -0
  26. package/dist/types/components/CoverageAmountSlider/styled.d.ts +41 -0
  27. package/dist/types/components/Footer/Footer.d.ts +94 -0
  28. package/dist/types/components/Footer/index.d.ts +3 -0
  29. package/dist/types/components/Footer/styled.d.ts +38 -0
  30. package/dist/types/components/Header/Header.d.ts +159 -0
  31. package/dist/types/components/Header/index.d.ts +3 -0
  32. package/dist/types/components/Header/styled.d.ts +80 -0
  33. package/dist/types/components/InfoCallout/InfoCallout.d.ts +34 -0
  34. package/dist/types/components/InfoCallout/index.d.ts +3 -0
  35. package/dist/types/components/InfoCallout/styled.d.ts +16 -0
  36. package/dist/types/components/NewHeader/NewHeader.d.ts +60 -0
  37. package/dist/types/components/NewHeader/index.d.ts +3 -0
  38. package/dist/types/components/NewHeader/styled.d.ts +26 -0
  39. package/dist/types/components/OptionButton/OptionButton.d.ts +59 -0
  40. package/dist/types/components/OptionButton/index.d.ts +3 -0
  41. package/dist/types/components/OptionButton/styled.d.ts +18 -0
  42. package/dist/types/components/ProductSelectionDrawer/ProductSelectionDrawer.d.ts +54 -0
  43. package/dist/types/components/ProductSelectionDrawer/index.d.ts +3 -0
  44. package/dist/types/components/ProductSelectionDrawer/styled.d.ts +44 -0
  45. package/dist/types/components/QuestionSection/QuestionSection.d.ts +71 -0
  46. package/dist/types/components/QuestionSection/index.d.ts +3 -0
  47. package/dist/types/components/QuestionSection/styled.d.ts +16 -0
  48. package/dist/types/components/RecommendationsDrawer/RecommendationsDrawer.d.ts +92 -0
  49. package/dist/types/components/RecommendationsDrawer/index.d.ts +3 -0
  50. package/dist/types/components/RecommendationsDrawer/styled.d.ts +35 -0
  51. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts +45 -0
  52. package/dist/types/components/ToggleGroup/index.d.ts +3 -0
  53. package/dist/types/components/ToggleGroup/styled.d.ts +17 -0
  54. package/dist/types/context/TenantThemeContext.d.ts +3 -2
  55. package/dist/types/index.d.ts +30 -4
  56. package/dist/types/{components/Banner → storybook-components}/Banner.stories.d.ts +1 -1
  57. package/dist/types/storybook-components/BillingToggle.stories.d.ts +10 -0
  58. package/dist/types/{components/Button → storybook-components}/Button.stories.d.ts +1 -1
  59. package/dist/types/{components/Card → storybook-components}/Card.stories.d.ts +1 -1
  60. package/dist/types/storybook-components/CoverageAmountSlider.stories.d.ts +14 -0
  61. package/dist/types/storybook-components/Footer.stories.d.ts +10 -0
  62. package/dist/types/storybook-components/Header.stories.d.ts +9 -0
  63. package/dist/types/storybook-components/InfoCallout.stories.d.ts +11 -0
  64. package/dist/types/storybook-components/NewHeader.stories.d.ts +82 -0
  65. package/dist/types/storybook-components/OptionButton.stories.d.ts +12 -0
  66. package/dist/types/storybook-components/ProductSelectionDrawer.stories.d.ts +24 -0
  67. package/dist/types/storybook-components/QuestionSection.stories.d.ts +11 -0
  68. package/dist/types/storybook-components/RecommendationsDrawer.stories.d.ts +36 -0
  69. package/dist/types/storybook-components/ToggleGroup.stories.d.ts +10 -0
  70. package/dist/types/themes/index.d.ts +1 -1
  71. package/dist/types/themes/typography.d.ts +69 -0
  72. package/dist/types/types/tenant.d.ts +23 -2
  73. package/dist/types/utils/assets.d.ts +54 -0
  74. package/dist/types/utils/theme.d.ts +3 -2
  75. package/package.json +4 -2
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Common UI Icons
3
+ * Path references to reusable icons
4
+ * Assets are copied to dist/assets folder during build
5
+ */
6
+ export declare const ICON_PATHS: {
7
+ readonly close: "/assets/icons/close.svg";
8
+ readonly arrow: "/assets/icons/arrow.svg";
9
+ readonly arrowDown: "/assets/icons/arrow-down.svg";
10
+ readonly alert: "/assets/icons/alert.svg";
11
+ readonly facebook: "/assets/icons/facebook.svg";
12
+ readonly instagram: "/assets/icons/instagram.svg";
13
+ readonly youtube: "/assets/icons/youtube.svg";
14
+ };
15
+ export type IconName = keyof typeof ICON_PATHS;
16
+ /**
17
+ * Get icon path by name
18
+ * @param iconName - Name of the icon
19
+ * @returns Path to icon asset
20
+ */
21
+ export declare function getIconPath(iconName: IconName): string;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Asset Exports
3
+ * Centralized exports for all assets
4
+ *
5
+ * Note: Assets are copied to dist/assets during build
6
+ * Use the provided utilities to reference asset paths
7
+ */
8
+ export { ICON_PATHS, getIconPath } from './icons';
9
+ export type { IconName } from './icons';
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Billing Toggle Component
3
+ * Toggle between monthly and annual billing options
4
+ * Based on Figma design (node-id: 98-21872)
5
+ */
6
+ export interface BillingToggleProps {
7
+ /**
8
+ * Currently selected billing type
9
+ */
10
+ value: 'monthly' | 'annually';
11
+ /**
12
+ * Callback when billing type changes
13
+ */
14
+ onChange: (value: 'monthly' | 'annually') => void;
15
+ /**
16
+ * Optional format message function for i18n
17
+ */
18
+ formatMessage?: (descriptor: {
19
+ id: string;
20
+ defaultMessage?: string;
21
+ }) => string;
22
+ }
23
+ /**
24
+ * BillingToggle - Toggle between monthly and annual billing
25
+ *
26
+ * @example
27
+ * ```tsx
28
+ * <BillingToggle
29
+ * value={billingType}
30
+ * onChange={setBillingType}
31
+ * />
32
+ * ```
33
+ */
34
+ export declare function BillingToggle({ value, onChange, formatMessage, }: BillingToggleProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { BillingToggle } from './BillingToggle';
2
+ export type { BillingToggleProps } from './BillingToggle';
3
+ export * from './styled';
@@ -0,0 +1,12 @@
1
+ /// <reference types="react" />
2
+ export declare const ToggleContainer: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
3
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
4
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
5
+ export declare const ToggleButton: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
6
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
7
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
8
+ active: boolean;
9
+ }, {}, {}>;
10
+ export declare const ToggleText: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
11
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
12
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Coverage Amount Slider Component
3
+ * Interactive slider for selecting coverage amounts with plus/minus controls
4
+ * Based on Figma design (node-id: 98-21900)
5
+ */
6
+ export interface CoverageAmountSliderProps {
7
+ /**
8
+ * Minimum coverage amount
9
+ */
10
+ min: number;
11
+ /**
12
+ * Maximum coverage amount
13
+ */
14
+ max: number;
15
+ /**
16
+ * Current coverage amount value
17
+ */
18
+ value: number;
19
+ /**
20
+ * Callback when coverage amount changes
21
+ */
22
+ onChange: (value: number) => void;
23
+ /**
24
+ * Label text for the input (default: "Choose your coverage amount")
25
+ */
26
+ label?: string;
27
+ /**
28
+ * Number of segments in the slider (default: 8 - matches design with 8 dots between start and end)
29
+ */
30
+ segments?: number;
31
+ /**
32
+ * Currency symbol (default: "RM")
33
+ */
34
+ currency?: string;
35
+ /**
36
+ * Format function for displaying currency
37
+ */
38
+ formatCurrency?: (amount: number) => string;
39
+ }
40
+ /**
41
+ * CoverageAmountSlider - Interactive slider for selecting coverage amounts
42
+ *
43
+ * @example
44
+ * ```tsx
45
+ * <CoverageAmountSlider
46
+ * min={100000}
47
+ * max={550000}
48
+ * value={coverageAmount}
49
+ * onChange={setCoverageAmount}
50
+ * />
51
+ * ```
52
+ */
53
+ export declare function CoverageAmountSlider({ min, max, value, onChange, label, segments, currency, formatCurrency: customFormatCurrency, }: CoverageAmountSliderProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { CoverageAmountSlider } from './CoverageAmountSlider';
2
+ export type { CoverageAmountSliderProps } from './CoverageAmountSlider';
3
+ export * from './styled';
@@ -0,0 +1,41 @@
1
+ /// <reference types="react" />
2
+ export declare const SliderContainer: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
3
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
4
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
5
+ export declare const InputSection: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
6
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
7
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
8
+ export declare const InputLabel: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
9
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
10
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
11
+ export declare const InputContainer: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
12
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
13
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
14
+ export declare const InputValue: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
15
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
16
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
17
+ export declare const SliderTrack: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
18
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
19
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
20
+ export declare const SliderSegment: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
21
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
22
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
23
+ active: boolean;
24
+ }, {}, {}>;
25
+ export declare const SliderDot: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
26
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
27
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
28
+ active: boolean;
29
+ }, {}, {}>;
30
+ export declare const SliderThumb: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
31
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
32
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
33
+ export declare const ThumbIcon: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
34
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
35
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
36
+ export declare const RangeLabels: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
37
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
38
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
39
+ export declare const RangeLabel: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
40
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
41
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Tenant-Aware Footer Component
3
+ * Responsive footer with links, social media, and company information
4
+ */
5
+ export interface SocialLink {
6
+ platform: 'facebook' | 'instagram' | 'youtube' | 'twitter' | 'linkedin';
7
+ url: string;
8
+ icon: string;
9
+ ariaLabel?: string;
10
+ }
11
+ export interface FooterLicenseImage {
12
+ src: string;
13
+ alt: string;
14
+ width: string;
15
+ height: string;
16
+ url?: string;
17
+ ariaLabel?: string;
18
+ }
19
+ export interface FooterNavigationLink {
20
+ label: string;
21
+ innerHref?: string;
22
+ outerHref?: string;
23
+ key?: string;
24
+ }
25
+ export interface FooterProps {
26
+ /**
27
+ * Simplified layout without navigation links
28
+ */
29
+ simplifiedLayout?: boolean;
30
+ /**
31
+ * Company introduction text
32
+ */
33
+ introText: string;
34
+ /**
35
+ * Company address
36
+ */
37
+ addressText?: string;
38
+ /**
39
+ * Social media links
40
+ */
41
+ socialLinks: SocialLink[];
42
+ /**
43
+ * License/certification images (e.g., OJK, APPARINDO)
44
+ */
45
+ licenseImages: FooterLicenseImage[];
46
+ /**
47
+ * Powered by image
48
+ */
49
+ poweredByImage?: FooterLicenseImage;
50
+ /**
51
+ * Footer navigation links organized in sections
52
+ */
53
+ navigationLinks?: FooterNavigationLink[][];
54
+ /**
55
+ * Current locale
56
+ */
57
+ currentLocale: string;
58
+ /**
59
+ * Host URL
60
+ */
61
+ host?: string;
62
+ /**
63
+ * Is mobile view
64
+ */
65
+ isMobile?: boolean;
66
+ /**
67
+ * Event handlers
68
+ */
69
+ onLinkClick?: (link: FooterNavigationLink) => void;
70
+ onSocialClick?: (platform: string, url: string) => void;
71
+ onPrivacyPolicyClick?: () => void;
72
+ onTermsOfServiceClick?: () => void;
73
+ /**
74
+ * Format message function for i18n
75
+ */
76
+ formatMessage?: (descriptor: {
77
+ id: string;
78
+ }) => string;
79
+ }
80
+ /**
81
+ * Footer component with tenant theme support
82
+ *
83
+ * @example
84
+ * ```tsx
85
+ * <Footer
86
+ * introText="Company introduction..."
87
+ * socialLinks={socialMediaLinks}
88
+ * licenseImages={licenses}
89
+ * navigationLinks={footerNavLinks}
90
+ * currentLocale="en"
91
+ * />
92
+ * ```
93
+ */
94
+ export declare function Footer({ simplifiedLayout, introText, addressText, socialLinks, licenseImages, poweredByImage, navigationLinks, currentLocale, host, isMobile: propIsMobile, onLinkClick, onSocialClick, onPrivacyPolicyClick, onTermsOfServiceClick, formatMessage, }: FooterProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { Footer } from './Footer';
2
+ export type { FooterProps, SocialLink, FooterLicenseImage, FooterNavigationLink, } from './Footer';
3
+ export * from './styled';
@@ -0,0 +1,38 @@
1
+ /// <reference types="react" />
2
+ export declare const DivFooter: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
3
+ export declare const DivFooterConterResponsiveLayout: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
4
+ export declare const FooterHiddenContent: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme> & {
5
+ simplifiedLayout: boolean;
6
+ }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
7
+ export declare const DivIglooIntro: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
8
+ export declare const DivSocial: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
9
+ export declare const ButtonIcon: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
10
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
11
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
12
+ export declare const TypographyIntro: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
13
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
14
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
15
+ export declare const TypographyAddressFooter: import("@emotion/styled").StyledComponent<import("@mui/material").TypographyOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, "ref"> & {
16
+ ref?: ((instance: HTMLSpanElement | null) => void) | import("react").RefObject<HTMLSpanElement> | null | undefined;
17
+ }, "fontFamily" | "children" | "p" | "style" | "fontSize" | "fontStyle" | "fontWeight" | "lineHeight" | "border" | "className" | "classes" | "sx" | "boxShadow" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "color" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "marginBlock" | "marginInline" | "overflow" | "padding" | "paddingBlock" | "paddingInline" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint" | "variant" | "align" | "gutterBottom" | "noWrap" | "paragraph" | "variantMapping"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
18
+ export declare const DivLogos: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
19
+ export declare const DivFirstRow: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
20
+ export declare const ButtonOjkLink: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
21
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
22
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
23
+ export declare const ImageOjkLicense: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, {}>;
24
+ export declare const ButtonSolisoustamaLink: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
25
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
26
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
27
+ export declare const ImageSolisoustama: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").ImgHTMLAttributes<HTMLImageElement>, HTMLImageElement>, {}>;
28
+ export declare const DivLinks: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
29
+ export declare const DivSection: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
30
+ export declare const ButtonBottomLink: import("@emotion/styled").StyledComponent<import("@mui/material").ButtonOwnProps & Omit<import("@mui/material").ButtonBaseOwnProps, "classes"> & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, "ref"> & {
31
+ ref?: ((instance: HTMLButtonElement | null) => void) | import("react").RefObject<HTMLButtonElement> | null | undefined;
32
+ }, "children" | "style" | "className" | "classes" | "action" | "centerRipple" | "disabled" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "LinkComponent" | "onFocusVisible" | "sx" | "tabIndex" | "TouchRippleProps" | "touchRippleRef" | "color" | "disableElevation" | "disableFocusRipple" | "endIcon" | "fullWidth" | "href" | "size" | "startIcon" | "variant"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
33
+ export declare const StyledDivider: import("@emotion/styled").StyledComponent<import("@mui/material").DividerOwnProps & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLHRElement>, HTMLHRElement>, "ref"> & {
34
+ ref?: ((instance: HTMLHRElement | null) => void) | import("react").RefObject<HTMLHRElement> | null | undefined;
35
+ }, "children" | "style" | "light" | "className" | "classes" | "sx" | "textAlign" | "variant" | "absolute" | "orientation" | "flexItem"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
36
+ export declare const DivBottom: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
37
+ export declare const DivSep: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
38
+ export declare const AnchorLink: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, import("react").DetailedHTMLProps<import("react").AnchorHTMLAttributes<HTMLAnchorElement>, HTMLAnchorElement>, {}>;
@@ -0,0 +1,159 @@
1
+ /**
2
+ * Tenant-Aware Header Component
3
+ * Responsive header with navigation, authentication, and language selection
4
+ */
5
+ import * as React from 'react';
6
+ export interface NavigationLink {
7
+ key: string;
8
+ name: string;
9
+ icon: string;
10
+ link?: string;
11
+ badge?: string;
12
+ }
13
+ export interface LanguageOption {
14
+ value: string;
15
+ locale: string;
16
+ label: string;
17
+ }
18
+ export interface HeaderProps {
19
+ /**
20
+ * Logo image source
21
+ */
22
+ logo: string;
23
+ /**
24
+ * Alternative logo for special pages (e.g., partnership page)
25
+ */
26
+ alternateLogo?: string;
27
+ /**
28
+ * Show alternate logo
29
+ */
30
+ showAlternateLogo?: boolean;
31
+ /**
32
+ * Navigation links for products/services
33
+ */
34
+ navigationLinks: NavigationLink[];
35
+ /**
36
+ * Available languages
37
+ */
38
+ languages: LanguageOption[];
39
+ /**
40
+ * Current locale (e.g., 'en', 'id')
41
+ */
42
+ currentLocale: string;
43
+ /**
44
+ * Current language code
45
+ */
46
+ currentLang?: string;
47
+ /**
48
+ * User authentication token
49
+ */
50
+ userToken?: string | null;
51
+ /**
52
+ * User first name for avatar
53
+ */
54
+ userFirstName?: string;
55
+ /**
56
+ * Is mobile view
57
+ */
58
+ isMobile?: boolean;
59
+ /**
60
+ * Is scrolled
61
+ */
62
+ scrolled?: boolean;
63
+ /**
64
+ * Is partnership page mobile view
65
+ */
66
+ isPartnershipPageMobileView?: boolean;
67
+ /**
68
+ * Is partnership page PC view
69
+ */
70
+ isPartnershipPagePCView?: boolean;
71
+ /**
72
+ * Is SEO page view
73
+ */
74
+ isSeoPageView?: boolean;
75
+ /**
76
+ * Show get quote button in header
77
+ */
78
+ showGetQuoteButton?: boolean;
79
+ /**
80
+ * Banner data for CTA
81
+ */
82
+ bannerData?: {
83
+ ctaText?: string;
84
+ ctaBGColor?: string;
85
+ ctaTextColor?: string;
86
+ };
87
+ /**
88
+ * CTA data for category page
89
+ */
90
+ ctaData?: {
91
+ ctaText?: string;
92
+ };
93
+ /**
94
+ * Host URL
95
+ */
96
+ host?: string;
97
+ /**
98
+ * Welcome message for drawer
99
+ */
100
+ welcomeMessage?: string;
101
+ /**
102
+ * Event handlers
103
+ */
104
+ onLogoClick?: () => void;
105
+ onProductMenuClick?: (key: string) => void;
106
+ onLanguageChange?: (locale: string, value: string) => void;
107
+ onLoginClick?: () => void;
108
+ onSignupClick?: () => void;
109
+ onLogoutClick?: () => void;
110
+ onPartnershipClick?: () => void;
111
+ onAboutUsClick?: () => void;
112
+ onBlogClick?: () => void;
113
+ onMyProfileClick?: () => void;
114
+ onGetQuoteClick?: () => void;
115
+ onPartnershipCTAClick?: () => void;
116
+ /**
117
+ * Format message function for i18n
118
+ */
119
+ formatMessage?: (descriptor: {
120
+ id: string;
121
+ }) => string;
122
+ /**
123
+ * Additional menu items (e.g., Partnership, About Us, Blog)
124
+ */
125
+ menuItems?: {
126
+ partnership?: {
127
+ label: string;
128
+ route: string;
129
+ };
130
+ aboutUs?: {
131
+ label: string;
132
+ route: string;
133
+ };
134
+ blog?: {
135
+ label: string;
136
+ url: string;
137
+ };
138
+ };
139
+ /**
140
+ * User profile component
141
+ */
142
+ userProfileComponent?: React.ReactNode;
143
+ }
144
+ /**
145
+ * Header component with tenant theme support and responsive navigation
146
+ *
147
+ * @example
148
+ * ```tsx
149
+ * <Header
150
+ * logo={logoSrc}
151
+ * navigationLinks={navLinks}
152
+ * languages={languageOptions}
153
+ * currentLocale="en"
154
+ * onLogoClick={() => history.push('/')}
155
+ * onLoginClick={() => setShowLoginModal(true)}
156
+ * />
157
+ * ```
158
+ */
159
+ export declare function Header({ logo, alternateLogo, showAlternateLogo, navigationLinks, languages, currentLocale, currentLang, userToken, userFirstName, isMobile: propIsMobile, scrolled, isPartnershipPageMobileView, isPartnershipPagePCView, isSeoPageView, showGetQuoteButton, bannerData, ctaData, host, welcomeMessage, formatMessage, menuItems, userProfileComponent, onLogoClick, onProductMenuClick, onLanguageChange, onLoginClick, onSignupClick, onLogoutClick, onPartnershipClick, onAboutUsClick, onBlogClick, onMyProfileClick, onGetQuoteClick, onPartnershipCTAClick, }: HeaderProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export { Header } from './Header';
2
+ export type { HeaderProps, NavigationLink, LanguageOption } from './Header';
3
+ export * from './styled';