import { PaletteNames } from '../../theme/palette';
import { SvgIcon } from '../Icon';
import { IconName } from '../Icons/IconNames';
import { ExpanderSize } from './constants';
export type ExpanderColors = Extract<PaletteNames, 'banana' | 'blueberry' | 'cherry' | 'kiwi' | 'neutral' | 'plum' | 'white'>;
export interface ExpanderProps {
    buttonId?: string;
    /** Sets the trigger title */
    title: string;
    /** Sets the expanded content */
    children?: React.ReactNode;
    /** Sets classnames on the content area */
    contentClassNames?: string;
    /** Sets the size of the expander. Default: ExpanderSize.small */
    size?: ExpanderSize;
    /** Sets the background of the expander. Requires size=ExpanderSize.large. */
    color?: ExpanderColors;
    /** Adds an icon to the expander trigger. Requires size=ExpanderSize.large. */
    svgIcon?: SvgIcon | IconName;
    /** Opens or closes the expander */
    expanded?: boolean;
    /** Removes border to the left of the content. Requires size=ExpanderSize.small. */
    noNestedLine?: boolean;
    /** Stick expander trigger to top of screen while scrolling down */
    sticky?: boolean;
    /** Called when expander is open/closed. */
    onExpand?: (isExpanded: boolean) => void;
    /** Whether to render children when closed (in which case they are hidden with CSS). Default: false */
    renderChildrenWhenClosed?: boolean;
    /** Sets the data-testid attribute on the expander button. */
    testId?: string;
    /** Overrides the default z-index of the expander header */
    zIndex?: number;
}
declare const Expander: React.FC<ExpanderProps>;
export default Expander;
