import { default as React, ReactNode } from 'react';
import { SpacingProps } from '../../tokens/spacing';
import { Color } from '../../tokens/colors';
export interface SectionProps extends SpacingProps, Omit<React.ComponentPropsWithoutRef<'section'>, keyof SpacingProps | 'color'> {
    color?: Color;
    /**
     * Marks the section as a dark surface so descendants (Heading, Button,
     * Link) pick up light `var(--text)` color. Use for hero sections with
     * dark or strongly colored backgrounds. For the rare case of forcing a
     * light surface inside a dark page, apply `className="surface-light"`.
     */
    dark?: boolean;
    testId?: string;
}
interface SectionHeaderProps {
    children?: ReactNode;
    className?: string;
}
interface SectionEyebrowProps {
    children?: ReactNode;
    className?: string;
}
interface SectionTitleProps {
    children?: ReactNode;
    className?: string;
    as?: 'h1' | 'h2' | 'h3';
}
interface SectionLinkProps extends React.ComponentPropsWithoutRef<'a'> {
    children?: ReactNode;
    className?: string;
    /**
     * Override the rendered element. Defaults to a plain `<a>`. Pass a
     * Next.js / TanStack / framework-specific Link component when the
     * destination is an internal route so you keep client-side navigation
     * and prefetching. Receives the same `href`, `className`, and any
     * other anchor props passed to `Section.Link`.
     */
    as?: React.ElementType;
}
interface SectionComponent extends React.FC<SectionProps> {
    Header: React.FC<SectionHeaderProps>;
    Eyebrow: React.FC<SectionEyebrowProps>;
    Title: React.FC<SectionTitleProps>;
    Link: React.FC<SectionLinkProps>;
}
export declare const Section: SectionComponent;
export {};
//# sourceMappingURL=Section.d.ts.map