import { default as React, ComponentPropsWithoutRef } from 'react'; import { CardGroupSelectionMode } from '@viasat/beam-shared/components/card'; import { FormValidator } from '@viasat/beam-shared/components/form'; export interface CardGroupProps extends Omit, 'onChange'> { /** * The Cards that belong to this CardGroup */ 'children'?: React.ReactNode; /** * Accessible group label */ 'aria-label'?: string; /** * ID(s) of elements that label the group */ 'aria-labelledby'?: string; /** * Specify if all cards in the group are disabled * @default false */ 'disabled'?: boolean; /** * Specify the selection mode for the group * @default 'single' */ 'selectionMode'?: CardGroupSelectionMode; /** * When true, shows a visual selection indicator (radio or checkbox) on cards * @default false */ 'showIndicator'?: boolean; /** * Specify the shared name attribute for form integration when selectable. * When omitted, CardGroup will auto-generate a name */ 'name'?: string; /** * Controlled value for the group. * * - single selection expects a string * - multiple selection expects a string[] */ 'value'?: string | string[]; /** * Uncontrolled initial value for the group */ 'defaultValue'?: string | string[]; /** * Callback invoked when the group selection changes */ 'onChange'?: (value: string | string[] | undefined, event: React.ChangeEvent) => void; /** * Specify if the group is a required field * @default false */ 'required'?: boolean; /** * Specify if the group displays in a read-only state * @default false */ 'readOnly'?: boolean; /** * Specify form validation rules for the group */ 'validationRules'?: FormValidator[]; } export declare const CardGroup: React.ForwardRefExoticComponent>;