UNPKG

@carbon/ibm-products

Version:

Carbon for IBM Products

83 lines (82 loc) 2.56 kB
/** * Copyright IBM Corp. 2024 * * This source code is licensed under the Apache-2.0 license found in the * LICENSE file in the root directory of this source tree. */ import React, { PropsWithChildren, ReactNode, Ref } from 'react'; import { CarbonIconType } from '@carbon/react/icons'; import { Condition, Action, Option, ConfigType } from '../ConditionBuilder.types'; interface ConditionBuilderItemProps extends PropsWithChildren { className?: string; label?: string | Option | Option[]; renderIcon?: CarbonIconType; title?: string; showToolTip?: boolean; popOverClassName?: string; type?: string; description?: string; condition?: Action & Condition; config?: ConfigType; renderChildren?: (ref: Ref<HTMLDivElement>) => ReactNode; onChange?: (val: string) => void; tabIndex?: number; onMouseEnter?: (e: React.MouseEvent<HTMLButtonElement>) => void; onMouseLeave?: (e: React.MouseEvent<HTMLButtonElement>) => void; onFocus?: React.FocusEventHandler<HTMLButtonElement>; onBlur?: React.FocusEventHandler<HTMLButtonElement>; } export declare const ConditionBuilderItem: { ({ children, className, label, renderIcon, title, type, showToolTip, condition, popOverClassName, config, renderChildren, onChange, description, ...rest }: ConditionBuilderItemProps): React.JSX.Element; propTypes: { /** * provide the contents of the popover */ children: any; /** * Provide an optional class to be applied to the containing node. */ className: any; /** * current condition state object */ condition: any; /** * this is the config object again the current property from inputConfig */ config: any; /** * text to be displayed in the field */ label: any; /** * callback to update the current condition of the state tree */ onChange: any; /** * class name for popover */ popOverClassName: any; /** * callback prop that returns the jsx for children */ renderChildren: any; /** * Optional prop to allow overriding the icon rendering. */ renderIcon: any; /** * show tool tip */ showToolTip: any; /** * title of the popover */ title: any; /** * input type */ type: any; }; }; export {};