import { DividerProps, TitleProps } from '@mantine/core'; import { WidgetPlugin, ArrayNode, DefaultNodeOptions } from '@sagold/react-json-editor'; import { SortableOptions } from '../../features/dragndrop/useDraggableItems'; import { WidgetMenuItems } from '../../components/widgetmenu/WidgetMenu'; /** * JSON Schema array options * * @example * { * "type": "array", * "x-options": { * "showEditJsonAction": false * } * } */ export type ArrayOptions = DefaultNodeOptions & { /** if set, will add an accordion in the given toggle state */ collapsed?: boolean; /** * if set, will add an edit-json action to edit, copy and paste json-data for this location * * @story ArrayWidget.Options */ showEditJsonAction?: boolean; /** Is set internally to true to add a delete option for this object. */ isOptional?: boolean; /** set to true to show inline button at the end of the array to add another item */ showInlineAddAction?: boolean; /** set to false to deactivate array menu */ showHeaderMenu?: boolean; /** set to false to deactivate any array item-controls */ showItemControls?: boolean; /** set to true to inline description */ descriptionInline?: boolean; /** set to `{ enabled: true }` for dragndrop */ sortable?: SortableOptions; /** if true will add a separator line to the header */ showTitleDivider?: boolean; /** placement of title within the separator */ dividerProps?: Pick; /** Mantine Title Props */ titleProps?: TitleProps; selectable?: boolean; /** if false, will hide title. will hide complete title-header if no menu-actions are available */ showHeader?: boolean; /** @internal */ widgetMenuItems?: WidgetMenuItems; /** @internal */ widget?: string; }; export declare const ArrayWidget: import("react").MemoExoticComponent<(props: import("../../../../react-json-editor/src/decorators").WidgetProps>) => import("react").ReactNode>; export declare const ArrayWidgetPlugin: WidgetPlugin;