/** * Copyright 2021, SumUp Ltd. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { type HTMLAttributes, type ReactNode } from 'react'; import { type ListItemProps } from '../ListItem/index.js'; type Variant = 'plain' | 'inset'; type ItemProps = ListItemProps & { key: string | number; }; interface BaseProps { /** * Choose between 'inset' (outer border and dividers) and 'plain' (only * dividers) variant. Defaults to 'inset'. */ variant?: Variant; /** * List of ListItem prop objects to render as a group. Each item needs to * have a unique `key`. */ items: ItemProps[]; /** * Display a main label/headline describing the group. * `aria-label` or `aria-labelledby` can alternatively be used to provide accessibility information. */ label?: ReactNode; /** * Visually hide the label. This should only be used in rare cases and only * if the purpose of the field can be inferred from other context. */ hideLabel?: boolean; /** * Display a secondary right-aligned label. */ details?: ReactNode; } export type ListItemGroupProps = BaseProps & HTMLAttributes; /** * The ListItemGroup component enables the user to render a named list of ListItem components. */ export declare const ListItemGroup: import("react").ForwardRefExoticComponent & import("react").RefAttributes>; export {};