import { Accessibility, ListBehaviorProps } from '@fluentui/accessibility'; import { ComponentWithAs } from '@fluentui/react-bindings'; import * as React from 'react'; import { ComponentEventHandler, ShorthandCollection, ReactChildren, FluentComponentStaticProps } from '../../types'; import { UIComponentProps, ChildrenComponentProps } from '../../utils'; import { ListItem, ListItemProps } from './ListItem'; export interface ListProps extends UIComponentProps, ChildrenComponentProps { /** Accessibility behavior if overridden by the user. */ accessibility?: Accessibility; /** Toggle debug mode */ debug?: boolean; /** Shorthand array of props for ListItem. */ items?: ShorthandCollection; /** A selectable list formats list items as possible choices. */ selectable?: boolean; /** A navigable list allows user to navigate through items. */ navigable?: boolean; /** Index of the currently selected item. */ selectedIndex?: number; /** Initial selectedIndex value. */ defaultSelectedIndex?: number; /** * Event for request to change 'selectedIndex' value. * @param event - React's original SyntheticEvent. * @param data - All props and proposed value. */ onSelectedIndexChange?: ComponentEventHandler; /** Truncates content */ truncateContent?: boolean; /** Truncates header */ truncateHeader?: boolean; /** A horizontal list displays elements horizontally. */ horizontal?: boolean; /** An optional wrapper function. */ wrap?: (children: ReactChildren) => React.ReactNode; } export declare type ListStylesProps = Pick & { isListTag: boolean; }; export declare const listClassName = "ui-list"; /** * A List displays a group of related sequential items. * * @accessibility * List may follow one of the following accessibility semantics: * - Static non-navigable list. Implements [ARIA list](https://www.w3.org/TR/wai-aria-1.1/#list) role. * - Selectable list: allows the user to select item from a list of choices. Implements [ARIA Listbox](https://www.w3.org/TR/wai-aria-practices-1.1/#Listbox) design pattern. */ export declare const List: ComponentWithAs<'ul', ListProps> & FluentComponentStaticProps & { Item: typeof ListItem; };