/// import Group from '310-logic/component/Group'; import Item from '310-logic/component/Item'; import Option from '310-logic/component/Option'; import List from '310-logic/component/List'; interface GroupProps extends Group { active?: true; disabled?: true; highlighted?: true; key: string; items: ItemProps[]; onClick?: (e: React.MouseEvent) => void; onMouseDown?: (e: React.MouseEvent) => void; } interface OptionProps extends Option { active?: true; disabled?: true; highlighted?: true; key: string; onClick?: (e: React.MouseEvent) => void; onMouseDown?: (e: React.MouseEvent) => void; } declare type ItemProps = GroupProps | OptionProps; interface ListProps extends Omit { head?: GroupProps; items: ItemProps[]; } interface ListConfig extends Omit { active: number[]; disabled: number[][]; highlighted: number[][]; items: Item[]; preview?: true; setActive: (value: number[], preview: boolean, event: React.TouchEvent | React.KeyboardEvent | React.MouseEvent) => void; } declare const useList: (config: ListConfig) => ListProps; export default useList; export { GroupProps, ItemProps, ListConfig, ListProps };