import React from "react"; import { helpIconProps, LabelProps } from "@bigbinary/neetoui"; import { HelpPopoverProps } from "./HelpPopover"; interface SwitchOption { value: boolean; label?: string; helpIconProps?: LabelProps["helpIconProps"]; } interface InlineProps { label: string; description: string; embedIcon?: React.FC; width?: number; height?: number; elementSelector?: string; dynamicHeight?: SwitchOption; hideTitle?: SwitchOption; alignContentLeft?: SwitchOption; transparentBackground?: SwitchOption; } interface FloatingPopupProps { label: string; description: string; embedIcon?: React.FC; btnText?: string; btnColor?: string; btnTextColor?: string; btnPosition?: string; icon?: React.FC; showIcon?: boolean; } interface ElementPopupProps { label: string; description: string; embedIcon?: React.FC; elementSelector?: string; } interface IframeProps { label: string; description: string; embedIcon?: React.FC; width?: number; height?: number; iframeUrl?: string; iframeTitle?: string; iframeAttributes?: Record; dynamicHeight?: SwitchOption; hideTitle?: SwitchOption; alignContentLeft?: SwitchOption; transparentBackground?: SwitchOption; } type CodeSampleType = "html" | "react"; const ProductEmbed: React.FC<{ title?: string; titleHelpPopoverProps?: HelpPopoverProps; subTitleHelpPopoverProps?: HelpPopoverProps; className?: string; goBackLink?: string; customEmbedScriptPath?: string; customPreviewIframeUrl?: string; extraArgs?: object; id: string; options?: { inline?: InlineProps; floatingPopup?: FloatingPopupProps; elementPopup?: ElementPopupProps; iframe?: IframeProps; }; isQueryParamsEnabled?: boolean; queryParamsProps?: { label?: string; helpPopoverProps?: HelpPopoverProps; keyPlaceholder?: string; valuePlaceholder?: string; addButtonLabel?: string; }; otherCustomizations?: Function; inlineWrapperStyle?: string; iframeStyle?: string; supportedLanguages?: CodeSampleType[]; }>; export default ProductEmbed;