import { WidgetPlugin, StringNode, DefaultNodeOptions, WidgetProps } from '@sagold/react-json-editor'; import { ChipProps } from '@mantine/core'; import { WidgetMenuItems } from '../components/widgetmenu/WidgetMenu'; /** * JSON Schema string-enum options * * @example * { * "type": "string", * "enum": ["month", "quarter", "year"], * "x-options": { * "showHeader": false * } * } */ export type SelectOptions = DefaultNodeOptions & { /** list of titles for the JSON Schema enum options - matched by index */ enum?: string[]; /** chip variant for taglist */ variant?: ChipProps['variant']; /** set to true to render radiogroup in a single line */ horizontal?: boolean; loading?: boolean; /** * if false, will hide title. will hide complete title-header if no menu-actions are available */ showHeader?: boolean; /** * @internal option for menu action items */ widgetMenuItems?: WidgetMenuItems; }; export declare const SelectWidget: (props: WidgetProps) => import("react").JSX.Element; export declare const TagListWidget: import("react").MemoExoticComponent<(props: import("../../../react-json-editor/src/decorators").WidgetProps>) => import("react").ReactNode>; export declare const SelectOptionsWidget: import("react").MemoExoticComponent<(props: import("../../../react-json-editor/src/decorators").WidgetProps>) => import("react").ReactNode>; /** * Select Widget will render a JSON Schema `type: "string", enum: [string]` as a selection. * * Three select components are available and you can choose between each type using the `x-widget` property: * * - per default it will render as normal select input * - `x-widget: "select:taglist` will render a horizontal options represented as tags to be selected directly * - `x-widget: "select:radiogroup` will render a vertical radiogroup with all options visible * * @example * { * "type": "string", * "enum": ["month", "quarter", "year"], * "x-widget": "select:radiogroup" * } */ export declare const SelectWidgetPlugin: WidgetPlugin;