UNPKG

@yamada-ui/checkbox

Version:

Yamada UI checkbox component

37 lines (34 loc) 1.88 kB
import * as react from 'react'; import { ChangeEvent, ReactElement } from 'react'; import { ThemeProps, CSSUIObject, PropGetter, HTMLUIProps } from '@yamada-ui/core'; import { FormControlOptions } from '@yamada-ui/form-control'; import { CheckboxCardProps } from './checkbox-card.js'; import '@yamada-ui/utils'; import './checkbox-card-addon.js'; import './checkbox-card-description.js'; import './checkbox-card-label.js'; import './use-checkbox.js'; interface CheckboxGroupSharedContext extends FormControlOptions { value: (number | string)[]; onChange: (evOrValue: ChangeEvent<HTMLInputElement> | number | string) => void; } interface CheckboxGroupContext extends CheckboxGroupSharedContext, ThemeProps<"Checkbox">, FormControlOptions { } declare const CheckboxGroupProvider: react.Provider<CheckboxGroupContext | undefined>; declare const useCheckboxGroupContext: () => CheckboxGroupContext | undefined; interface CheckboxCardGroupContext extends CheckboxGroupSharedContext, Pick<CheckboxCardProps, "addonProps" | "descriptionProps" | "labelProps" | "withIcon">, ThemeProps<"CheckboxCard"> { } declare const CheckboxCardGroupProvider: react.Provider<CheckboxCardGroupContext | undefined>; declare const useCheckboxCardGroupContext: () => CheckboxCardGroupContext | undefined; interface CheckboxCardContext { icon: ReactElement; styles: { [key: string]: CSSUIObject | undefined; }; withIcon: boolean; getIconProps: PropGetter; iconProps?: HTMLUIProps; } declare const CheckboxCardProvider: react.Provider<CheckboxCardContext>; declare const useCheckboxCardContext: () => CheckboxCardContext; export { type CheckboxCardContext, type CheckboxCardGroupContext, CheckboxCardGroupProvider, CheckboxCardProvider, type CheckboxGroupContext, CheckboxGroupProvider, useCheckboxCardContext, useCheckboxCardGroupContext, useCheckboxGroupContext };