import * as React from 'react';
import { P as PageSpeedFormConfig } from './forms-BCcwNFhk.js';

/**
 * Navigation link configuration
 */
interface FooterNewsletterMinimalNavLink {
    label: string;
    href: string;
}
/**
 * Social link configuration
 */
interface FooterNewsletterMinimalSocialLink {
    label: string;
    href: string;
}
/**
 * Footer link configuration
 */
interface FooterNewsletterMinimalFooterLink {
    label: string;
    href: string;
}
/**
 * Props for the FooterNewsletterMinimal component
 */
interface FooterNewsletterMinimalProps {
    /** Additional CSS classes */
    className?: string;
    /** Main heading text */
    heading?: string;
    /** Support email */
    supportEmail?: string;
    /** Navigation links */
    navLinks?: FooterNewsletterMinimalNavLink[];
    /** Social links */
    socialLinks?: FooterNewsletterMinimalSocialLink[];
    /** Footer links (privacy, terms) */
    footerLinks?: FooterNewsletterMinimalFooterLink[];
    /** Newsletter label */
    newsletterLabel?: string;
    /** Newsletter placeholder */
    newsletterPlaceholder?: string;
    /**
     * Optional form submission configuration.
     *
     * **Universal Usage**: Works with ANY REST API endpoint. Simply provide an `endpoint` URL
     * and the form will submit to it in JSON format.
     *
     * @example
     * // Works with any API
     * formConfig={{ endpoint: "https://api.mysite.com/subscribe", format: "json" }}
     *
     * @example
     * // With custom headers (e.g., authentication)
     * formConfig={{
     *   endpoint: "/api/newsletter",
     *   headers: { "Authorization": "Bearer token123" }
     * }}
     *
     * **Note**: The `apiKey`, `contactCategoryToken`, and other platform-specific fields
     * are OPTIONAL and only needed when integrating with DashTrack's Rails backend.
     * For generic REST APIs, just use `endpoint`, `method`, `format`, and `headers`.
     *
     * See `FORMS_INTEGRATION_GUIDE.md` for complete examples with Next.js, React, and more.
     */
    formConfig?: PageSpeedFormConfig;
    /**
     * Optional custom submission handler for maximum flexibility.
     *
     * Use this when you need complete control over the submission logic,
     * such as custom API calls, analytics tracking, or multi-step workflows.
     *
     * Can be used alone or in combination with `formConfig` for hybrid approaches.
     *
     * @example
     * onSubmit={async (email) => {
     *   await fetch("/api/subscribe", {
     *     method: "POST",
     *     body: JSON.stringify({ email, source: "footer" })
     *   });
     * }}
     */
    onSubmit?: (email: string) => void | Promise<void>;
    /**
     * Optional success callback invoked after successful submission.
     *
     * Called after `formConfig` submission and/or `onSubmit` completes successfully.
     * Use for showing success messages, redirecting, analytics tracking, etc.
     */
    onSuccess?: (data: unknown) => void;
    /**
     * Optional error callback invoked if submission fails.
     *
     * Receives the error object for custom error handling, logging, or user notifications.
     */
    onError?: (error: Error) => void;
    /** Location text */
    location?: string;
}
/**
 * FooterNewsletterMinimal - A dark-themed minimal footer with newsletter and animated logo.
 *
 * Features a clean layout with main heading, support email, navigation columns,
 * newsletter signup form, and a large animated brand logo. Ideal for modern SaaS products,
 * creative agencies, and businesses that want a sophisticated, dark-themed footer
 * with strong visual branding.
 */
declare function FooterNewsletterMinimal({ className, heading, supportEmail, navLinks, socialLinks, footerLinks, newsletterLabel, newsletterPlaceholder, formConfig, onSubmit, onSuccess, onError, location, }: FooterNewsletterMinimalProps): React.JSX.Element;

export { FooterNewsletterMinimal, type FooterNewsletterMinimalFooterLink, type FooterNewsletterMinimalNavLink, type FooterNewsletterMinimalProps, type FooterNewsletterMinimalSocialLink };
