import React from 'react'; import type { OtherHTMLAttributes, OptionsTheme, AsElementType } from '@instructure/shared-types'; import type { WithStyleProps } from '@instructure/emotion'; import Drilldown from '../index'; import type { DrilldownOptionValue } from '../DrilldownOption/props'; import type { OptionChild, SeparatorChild } from '../props'; type GroupChildren = OptionChild | SeparatorChild; type DrilldownGroupOwnProps = { id: string; /** * Children of type: * ``, `` */ children?: GroupChildren | GroupChildren[]; /** * The label of the option group. */ renderGroupTitle?: React.ReactNode | (() => React.ReactNode); /** * Hides the separators around the group. */ withoutSeparators?: boolean; /** * Is the option group disabled. */ disabled?: boolean; /** * The ARIA role of the element. */ role?: string; /** * Element type to render as. By default, it inherits Drilldown's `as` prop. */ as?: AsElementType; /** * Provides a reference to the underlying html root element */ elementRef?: (element: Element | null) => void; /** * Makes the option group selectable (with "check" icon indicators). * Can be set to a single-select (radio) or a multi-select (checkbox) group. */ selectableType?: 'single' | 'multiple'; /** * An array of the values for the selected items on initial render. Works only with "selectableType" set. If "selectableType" is "single", the array has to have 1 item. */ defaultSelected?: DrilldownOptionValue[]; /** * An array of the values for the selected items. If defined, the component will act controlled and will not manage its own state. Works only with "selectableType" set. * If "selectableType" is "single", the array has to have 1 item. */ selectedOptions?: DrilldownOptionValue[]; /** * Callback fired when an option within the `` is selected */ onSelect?: (event: React.SyntheticEvent, args: { value: DrilldownOptionValue[]; isSelected: boolean; selectedOption: OptionChild; drilldown: Drilldown; }) => void; }; type PropKeys = keyof DrilldownGroupOwnProps; type AllowedPropKeys = Readonly>; type DrilldownGroupProps = DrilldownGroupOwnProps & WithStyleProps & OtherHTMLAttributes; declare const allowedProps: AllowedPropKeys; export type { DrilldownGroupProps, GroupChildren }; export { allowedProps }; //# sourceMappingURL=props.d.ts.map