import * as React from 'react';
import { S as SectionBackground, s as SectionSpacing, t as PatternName } from './community-initiatives-Dud0DKXB.js';
import { O as OptixFlowConfig } from './blocks-DyouPohq.js';
import 'react/jsx-runtime';
import 'class-variance-authority';
import '@page-speed/pressable';
import '@opensite/hooks/usePlatformFromUrl';

/**
 * Image configuration for interior carousel.
 */
interface InteriorCarouselImage {
    /**
     * Image source URL
     */
    src: string;
    /**
     * Alt text for the image
     */
    alt?: string;
    /**
     * Additional CSS classes for the image
     */
    className?: string;
}
interface InteriorCarouselProps {
    /**
     * Main heading content
     */
    heading?: React.ReactNode;
    /**
     * Description text (supports newlines for multi-line display)
     */
    description?: React.ReactNode;
    /**
     * Array of images to display (can be strings or objects)
     */
    images?: (string | InteriorCarouselImage)[];
    /**
     * Custom slot for rendering images (overrides images array)
     */
    imagesSlot?: React.ReactNode;
    /**
     * Additional CSS classes for the section
     */
    className?: string;
    /**
     * Additional CSS classes for the heading
     */
    headingClassName?: string;
    /**
     * Additional CSS classes for the description
     */
    descriptionClassName?: string;
    /**
     * Additional CSS classes for the carousel wrapper
     */
    carouselClassName?: string;
    /**
     * Additional CSS classes for the carousel content
     */
    carouselContentClassName?: string;
    /**
     * Additional CSS classes for each carousel item
     */
    itemClassName?: string;
    /**
     * Additional CSS classes for each image
     */
    imageClassName?: string;
    /**
     * Additional CSS classes for the navigation controls
     */
    controlsClassName?: string;
    /**
     * Whether to loop the carousel
     * @default true
     */
    loop?: boolean;
    /**
     * 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 overlay
     */
    patternClassName?: string;
    /**
     * OptixFlow image optimization configuration
     */
    optixFlowConfig?: OptixFlowConfig;
    /** Optional Section ID */
    sectionId?: string;
}
/**
 * InteriorCarousel displays images in a looping two-up carousel layout.
 *
 * Features a centered header with title and multi-line description, followed
 * by a carousel showing two portrait images side-by-side. Navigation arrows
 * are overlaid on the carousel with semi-transparent dark backgrounds. The
 * carousel loops infinitely and uses a tall aspect ratio (3.8:5) for images.
 * Ideal for interior design portfolios, real estate galleries, or any visual
 * content showcasing spaces and environments.
 *
 * @example
 * ```tsx
 * <InteriorCarousel
 *   heading="Beautiful Interiors."
 *   description="Explore our curated collection of stunning interior designs."
 *   images={["/images/interior-1.jpg", "/images/interior-2.jpg"]}
 * />
 * ```
 */
declare function InteriorCarousel({ sectionId, heading, description, images, imagesSlot, className, headingClassName, descriptionClassName, carouselClassName, carouselContentClassName, itemClassName, imageClassName, controlsClassName, loop, background, spacing, pattern, patternOpacity, patternClassName, optixFlowConfig, }: InteriorCarouselProps): React.JSX.Element;

export { InteriorCarousel, type InteriorCarouselProps };
