UNPKG

@mantine/core

Version:

React components library focused on usability, accessibility and developer experience

36 lines (35 loc) 2.15 kB
import { Factory } from '../../../core'; export interface ChipGroupProps<Multiple extends boolean = false, Value extends string = string> { /** If set, multiple values can be selected */ multiple?: Multiple; /** Controlled component value */ value?: Multiple extends true ? Value[] : Value | null; /** Uncontrolled component initial value */ defaultValue?: Multiple extends true ? Value[] : Value | null; /** Called when value changes. If `multiple` prop is set, called with an array of selected values. If not, called with a string value of selected chip. */ onChange?: (value: Multiple extends true ? Value[] : Value) => void; /** `Chip` components and any other elements */ children?: React.ReactNode; } export type ChipGroupFactory = Factory<{ props: ChipGroupProps; signature: <Multiple extends boolean = false, Value extends string = string>(props: ChipGroupProps<Multiple, Value>) => React.JSX.Element; }>; export declare const ChipGroup: (<Multiple extends boolean = false, Value extends string = string>(props: ChipGroupProps<Multiple, Value>) => React.JSX.Element) & import("../../..").ThemeExtend<{ props: ChipGroupProps; signature: <Multiple extends boolean = false, Value extends string = string>(props: ChipGroupProps<Multiple, Value>) => React.JSX.Element; }> & import("../../..").ComponentClasses<{ props: ChipGroupProps; signature: <Multiple extends boolean = false, Value extends string = string>(props: ChipGroupProps<Multiple, Value>) => React.JSX.Element; }> & Record<string, never> & import("../../..").FactoryComponentWithProps<{ props: ChipGroupProps; signature: <Multiple extends boolean = false, Value extends string = string>(props: ChipGroupProps<Multiple, Value>) => React.JSX.Element; }> & { displayName?: string; }; export interface ChipGroupContextValue<Value extends string = string> { isChipSelected: (value: Value) => boolean; onChange: (event: React.ChangeEvent<HTMLInputElement>) => void; multiple: boolean | undefined; } export declare const ChipGroupContext: import("react").Context<ChipGroupContextValue<string> | null>;