import type { BlockManifest } from "../manifest/schema";
import type { SystemBlockDefinition } from "../registry";
import type { Media } from "../../lib/media";
import type { SectionStylesContent } from "../fields/boxStyles";
export declare const imageGalleryManifest: BlockManifest;
export type ImageGalleryContent = {
    variant?: "grid" | "carousel" | "masonry" | "marquee" | null;
    fullBleed?: boolean | null;
    aspectRatio?: "auto" | "1/1" | "4/3" | "16/9" | "3/2" | "3/4" | null;
    slidesToShow?: "1" | "2" | "3" | null;
    slidesToShowTablet?: "" | "1" | "2" | "3" | null;
    slidesToShowDesktop?: "" | "1" | "2" | "3" | null;
    transition?: "slide" | "fade" | null;
    showControls?: boolean | null;
    showDots?: boolean | null;
    autoplay?: boolean | null;
    autoplayDelay?: "3000" | "5000" | "7000" | "10000" | null;
    arrowVisibility?: "always" | "hover" | null;
    loop?: boolean | null;
    marqueeDirection?: "left" | "right" | null;
    marqueeSpeed?: "slow" | "medium" | "fast" | null;
    marqueePauseOnHover?: boolean | null;
    marqueeImageSize?: "sm" | "md" | "lg" | "xl" | null;
    imageFilter?: "none" | "grayscale" | "grayscale-hover-reveal" | "sepia" | null;
    imageBorder?: {
        enabled?: boolean | null;
        colorToken?: string | null;
        opacity?: number | null;
        width?: "1" | "2" | "3" | null;
    } | null;
    imageCorners?: "none" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | null;
    images?: Array<{
        image?: Media | null;
        caption?: string | null;
    }> | null;
    _sectionStyles?: SectionStylesContent;
};
export declare const imageGalleryBlockDefinition: SystemBlockDefinition<ImageGalleryContent>;
