import * as React from 'react';
import { P as PageSpeedFormConfig } from './forms-BCcwNFhk.js';
import { A as ActionConfig } from './blocks-BmrJXeAA.js';
import 'class-variance-authority';
import './button-variants-OIpPF9yW.js';
import 'class-variance-authority/types';

interface ContactSalesFormValues {
    first_name: string;
    last_name: string;
    email: string;
    phone: string;
    message: string;
}
interface ContactSalesProps {
    /**
     * Main heading content
     */
    heading?: React.ReactNode;
    /**
     * Description text below heading
     */
    description?: React.ReactNode;
    /**
     * Submit button text
     */
    buttonText?: string;
    /**
     * Submit button icon (displayed before text)
     */
    buttonIcon?: React.ReactNode;
    /**
     * Array of action configurations for additional buttons
     */
    actions?: ActionConfig[];
    /**
     * Custom slot for rendering actions (overrides actions array and default submit)
     */
    actionsSlot?: React.ReactNode;
    /**
     * Additional CSS classes for the section
     */
    className?: string;
    /**
     * Additional CSS classes for the container
     */
    containerClassName?: string;
    /**
     * Additional CSS classes for the header wrapper
     */
    headerClassName?: string;
    /**
     * Additional CSS classes for the heading
     */
    headingClassName?: string;
    /**
     * Additional CSS classes for the description
     */
    descriptionClassName?: string;
    /**
     * Additional CSS classes for the card
     */
    cardClassName?: string;
    /**
     * Additional CSS classes for the card content
     */
    cardContentClassName?: string;
    /**
     * Additional CSS classes for the form
     */
    formClassName?: string;
    /**
     * Additional CSS classes for the submit button
     */
    submitClassName?: string;
    /**
     * Form submission configuration
     */
    formConfig?: PageSpeedFormConfig;
    /**
     * Custom submission handler
     */
    onSubmit?: (values: ContactSalesFormValues) => void | Promise<void>;
    /**
     * Success callback after submission
     */
    onSuccess?: (data: unknown) => void;
    /**
     * Error callback if submission fails
     */
    onError?: (error: Error) => void;
}
/**
 * ContactSales - Contact form with image background layout.
 *
 * @example
 * ```tsx
 * <ContactSales
 *   heading="Talk to Sales"
 *   formConfig={{ endpoint: "/api/contact", format: "json" }}
 * />
 * ```
 */
declare function ContactSales({ heading, description, buttonText, buttonIcon, actions, actionsSlot, className, containerClassName, headerClassName, headingClassName, descriptionClassName, cardClassName, cardContentClassName, formClassName, submitClassName, formConfig, onSubmit, onSuccess, onError, }: ContactSalesProps): React.JSX.Element;

export { ContactSales, type ContactSalesProps };
