import { type VariantProps } from 'class-variance-authority'; import * as React from 'react'; declare const inlineCTAVariants: (props?: ({ variant?: "bordered" | "full-width" | null | undefined; } & import("class-variance-authority/types").ClassProp) | undefined) => string; interface InlineCTABaseProps extends Omit, 'title' | 'onSubmit'>, VariantProps { /** Title text for the CTA */ title: React.ReactNode; /** Supporting description text */ description?: React.ReactNode; } export interface InlineCTAActionsProps extends InlineCTABaseProps { type: 'actions'; /** Primary action button label */ primaryLabel?: string; /** Callback when primary button is clicked */ onPrimaryClick?: () => void; /** Secondary action button label */ secondaryLabel?: string; /** Callback when secondary button is clicked */ onSecondaryClick?: () => void; /** Stack buttons vertically (for mobile) */ stackedActions?: boolean; } export interface InlineCTAEmailProps extends InlineCTABaseProps { type: 'email'; /** Label for the email input field */ inputLabel?: string; /** Placeholder for the email input */ inputPlaceholder?: string; /** Submit button label */ submitLabel?: string; /** Callback when form is submitted */ onSubmit?: (email: string) => void; /** Stack input and button vertically (for mobile) */ stackedLayout?: boolean; /** Default email value */ defaultValue?: string; /** Loading state for the submit button */ loading?: boolean; } export interface InlineCTAImageProps extends InlineCTABaseProps { type: 'image'; /** Image source URL */ imageSrc: string; /** Image alt text */ imageAlt?: string; /** Show play button overlay on image */ showPlayButton?: boolean; /** Callback when play button is clicked */ onPlayClick?: () => void; /** Primary action button label */ primaryLabel?: string; /** Callback when primary button is clicked */ onPrimaryClick?: () => void; /** Secondary action button label */ secondaryLabel?: string; /** Callback when secondary button is clicked */ onSecondaryClick?: () => void; /** Stack buttons vertically (for mobile) */ stackedActions?: boolean; } export type InlineCTAProps = InlineCTAActionsProps | InlineCTAEmailProps | InlineCTAImageProps; declare function InlineCTA(props: InlineCTAProps): React.JSX.Element | null; declare namespace InlineCTA { var displayName: string; } export { InlineCTA, inlineCTAVariants };