import type { IconProps } from '@spark-web/icon';
import type { StackProps } from '@spark-web/stack';
import type { TextProps } from '@spark-web/text';
import type { DataAttributeMap } from '@spark-web/utils/internal';
import type { ReactElement, ReactNode } from 'react';
export declare const BULLET_ELEMENT_ID = "text-list-bullet";
export declare const NUMBER_ELEMENT_ID = "text-list-number";
declare const typeToElement: {
    readonly bullet: "ul";
    readonly number: "ol";
};
declare type ListElement = HTMLUListElement | HTMLOListElement;
export declare type TextListProps = {
    /** The elements that represent each item in the list. */
    children: ReactNode;
    /** Sets data attributes for the element. */
    data?: DataAttributeMap;
    /** The size of the gap between each item. */
    gap?: StackProps['gap'];
    /** Provide an icon to be used as the "bullet" element. */
    icon?: ReactElement<IconProps>;
    /** Default the size of child Text elements. */
    size?: TextProps['size'];
    /** Default the tone of child Text elements. */
    tone?: TextProps['tone'];
    /** Define the list type. Equivalent to HTML's ordered and unordered lists. */
    type?: keyof typeof typeToElement;
};
/** Organize and emphasize information quickly and effectively in a list of text elements. */
export declare const TextList: import("react").ForwardRefExoticComponent<TextListProps & import("react").RefAttributes<ListElement>>;
export declare const IndicatorContainer: ({ size, children, }: TextProps) => import("@emotion/react/jsx-runtime").JSX.Element;
export {};
