import React, { ReactNode } from 'react';
import { TooltipProps } from '../Tooltip';
export interface SelectorProps {
    className?: string;
    /** Applied as data-hook HTML attribute that can be used in the tests. */
    dataHook?: string;
    id: string | number;
    title: string;
    image?: ReactNode;
    size?: SelectorSize;
    imageSize?: SelectorImageSize;
    imageShape?: SelectorImageShape;
    isSelected?: boolean;
    isDisabled?: boolean;
    toggleTooltipProps?: SelectorToggleTooltipProps;
    indeterminate?: boolean;
    subtitle?: string;
    showDivider?: boolean;
    extraNode?: ReactNode;
    onToggle?: (id: SelectorProps['id']) => void;
    toggleType?: SelectorToggleType;
    showBelowNodeOnSelect?: boolean;
    belowNode?: ReactNode;
    subtitleNode?: ReactNode;
}
export type SelectorToggleTooltipProps = {
    content: TooltipProps['content'];
    transitionSettings?: {
        openDelay?: TooltipProps['enterDelay'];
        closeDelay?: TooltipProps['exitDelay'];
    };
};
export interface SelectorExtraTextProps {
    dataHook?: string;
    text: string;
}
export declare class SelectorExtraText extends React.PureComponent<SelectorExtraTextProps> {
}
export interface SelectorProgressBarProps {
    dataHook?: string;
    progress: number;
}
export declare class SelectorProgressBar extends React.PureComponent<SelectorProgressBarProps> {
}
export type SelectorSize = 'small' | 'medium';
export type SelectorImageSize = 'tiny' | 'small' | 'portrait' | 'large' | 'cinema';
export type SelectorImageShape = 'rectangular' | 'circle';
export type SelectorToggleType = 'checkbox' | 'radio';
//# sourceMappingURL=Selector.types.d.ts.map