import { SxProps } from '@mui/material';
import * as React from 'react';
import { IconId } from '../icon/Icon';
import { TypographyProps } from '../typography/Typography';
export declare const baseListItemColors: readonly ["default", "primary"];
type BaseListItemColor = (typeof baseListItemColors)[number];
export declare const baseListItemVariants: readonly ["default", "circular"];
type BaseListItemVariant = (typeof baseListItemVariants)[number];
export declare const baseListItemTypographyVariants: readonly ["body1", "body2", "body1-semibold"];
type BaseListItemTypographyVariant = (typeof baseListItemTypographyVariants)[number];
export type BaseListItemProps = {
    /**
     * The color variant of the list item.
     */
    color?: BaseListItemColor;
    /**
     * Adornment components to be placed at the start of the input.
     */
    startAdornment?: React.ReactNode;
    /**
     * Icon to be placed as first startAdornment. In fact, startIcon is like
     * a shorthand of `startAdornment={<Icon id={...}/>}`
     */
    startIconId?: IconId;
    /**
     * Adornment components to be placed at the end of the input.
     */
    endAdornment?: React.ReactNode;
    /**
     * Icon to be placed as first endAdornment. In fact, endIcon is like
     * a shorthand of `endAdornment={<Icon id={...}/>}`
     */
    endIconId?: IconId;
    /**
     * The variant to be used for main `text` prop. If supplied prop `children`
     * this text will be ignored.
     */
    typographyVariant?: BaseListItemTypographyVariant;
    /**
     * The text to be placed in main ListItem area. If supplied prop `children`
     * this text will be ignored.
     */
    text?: string;
    /**
     * The text to be shown under the main ListItem area. If supplied prop `children`
     * this text will be ignored.
     */
    subText?: string;
    /**
     * Children component to be used in main ListItem area. If supplied,
     * props `text` and `subText` will be ignored.
     */
    children?: React.ReactNode;
    /**
     * The styles applied to the ListItemBase.
     */
    baseSx?: SxProps;
    /**
     * Whether the list item is in selected state.
     */
    selected?: boolean;
    /**
     * The variant of the list item.
     */
    variant?: BaseListItemVariant;
    /**
     * Class to override .MuiTooltip-popper styles
     */
    tooltipClass?: string;
    /**
     * Overrides properties.
     */
    slotProps?: {
        typography?: Partial<Omit<TypographyProps, 'ref' | 'children' | 'variant'>>;
    };
    /**
     * Settled directly in DOM element, for testing easy location purposes.
     */
    'data-testid'?: string;
};
declare const BaseListItem: ({ baseSx, color, typographyVariant, variant, startAdornment, endAdornment, children, startIconId, endIconId, selected, text, subText, tooltipClass, slotProps, "data-testid": dataTestId }: BaseListItemProps) => import("react/jsx-runtime").JSX.Element;
export default BaseListItem;
