import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React from 'react';
import { P as PatternName } from './pattern-background-a7gKHzHy.js';
import { SectionBackground, SectionSpacing } from './types.js';
import { A as ActionConfig } from './blocks-BmrJXeAA.js';
import 'class-variance-authority';
import './button-variants-OIpPF9yW.js';
import 'class-variance-authority/types';

interface TimelineTabbedPhase {
    id: string;
    phase: string;
    title: React.ReactNode;
    date: React.ReactNode;
    heading: React.ReactNode;
    description: React.ReactNode;
    imageSrc: string;
    imageAlt: string;
}
interface TimelineTabbedPhasesProps {
    /**
     * Main heading content
     */
    heading?: React.ReactNode;
    /**
     * Array of timeline phases
     */
    phases?: TimelineTabbedPhase[];
    /**
     * Download action configuration
     */
    downloadAction?: ActionConfig;
    /**
     * Custom slot to override the default download button rendering
     */
    downloadSlot?: React.ReactNode;
    /**
     * Additional CSS classes for the section wrapper
     */
    className?: string;
    /**
     * Additional CSS classes for the content container
     */
    containerClassName?: string;
    /**
     * Additional CSS classes for the heading
     */
    headingClassName?: string;
    /**
     * Additional CSS classes for the tabs list
     */
    tabsListClassName?: string;
    /**
     * Additional CSS classes for tab triggers
     */
    tabTriggerClassName?: string;
    /**
     * Additional CSS classes for tab content
     */
    tabContentClassName?: string;
    /**
     * Additional CSS classes for phase dates
     */
    dateClassName?: string;
    /**
     * Additional CSS classes for phase headings
     */
    phaseHeadingClassName?: string;
    /**
     * Additional CSS classes for phase descriptions
     */
    descriptionClassName?: string;
    /**
     * Additional CSS classes for phase images
     */
    imageClassName?: string;
    /**
     * Background style for the section
     */
    background?: SectionBackground;
    /**
     * Vertical spacing for the section
     */
    spacing?: SectionSpacing;
    /**
     * Optional background pattern name or URL
     */
    pattern?: PatternName | undefined;
    /**
     * Pattern overlay opacity (0-1)
     */
    patternOpacity?: number;
    /**
     * Additional CSS classes for the pattern background
     */
    patternClassName?: string;
    /**
     * Section ID for anchor links
     */
    id?: string;
    /**
     * Inline styles for the section
     */
    style?: React.CSSProperties;
    /**
     * Optional Optix Flow configuration for image optimization
     */
    optixFlowConfig?: {
        apiKey: string;
        compression?: number;
    };
}
declare function TimelineTabbedPhases({ heading, phases, downloadAction, downloadSlot, className, containerClassName, headingClassName, tabsListClassName, tabTriggerClassName, tabContentClassName, dateClassName, phaseHeadingClassName, descriptionClassName, imageClassName, background, spacing, pattern, patternOpacity, patternClassName, id, style, optixFlowConfig, }: TimelineTabbedPhasesProps): react_jsx_runtime.JSX.Element;

export { type TimelineTabbedPhase, TimelineTabbedPhases, type TimelineTabbedPhasesProps };
