import React, { ReactNode } from 'react';
import type { SxProps } from '@mui/joy/styles/types';
export interface RadioTileOption<T = string> {
    value: T;
    label: ReactNode;
    disabled?: boolean;
    startDecorator?: ReactNode;
}
export interface RadioTileGroupProps<T = string> {
    /**
     * @default 'sm'
     */
    size?: 'sm' | 'md' | 'lg';
    options: RadioTileOption<T>[];
    value?: T;
    defaultValue?: T;
    name?: string;
    onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
    sx?: SxProps;
    disabled?: boolean;
    className?: string;
    useIndicator?: boolean;
    flex?: boolean;
    /**
     * 지정하지 않으면 한 row에 모든 옵션이 렌더링된다.
     * - 특정 rows 이내로 렌더링 하고 싶으면 `columns: Math.ceil(options.length / 원하는 rows)`로 설정할 수 있다.
     * - 수직으로 렌더링 하고 싶으면 `columns: 1`로 설정할 수 있다.
     * - `flex` 옵션과 함께 사용할수 있다.
     */
    columns?: number;
    /**
     * @default 'center'
     */
    textAlign?: 'start' | 'center';
    /**
     * Label for the RadioTileGroup
     */
    label?: React.ReactNode;
    /**
     * Helper text for the RadioTileGroup
     */
    helperText?: React.ReactNode;
    /**
     * Whether the RadioTileGroup has an error
     */
    error?: boolean;
    /**
     * Whether the RadioTileGroup is required
     */
    required?: boolean;
}
declare function RadioTileGroup<T extends string | number = string>(props: RadioTileGroupProps<T>): React.JSX.Element;
declare namespace RadioTileGroup {
    var displayName: string;
}
export { RadioTileGroup };
