finform-react-builder
Version:
A powerful, flexible React form builder with dynamic field rendering, custom validation, multi-step forms, Material-UI integration, image component support, toggle/radio buttons, switches, autocomplete, and advanced button positioning
30 lines (29 loc) • 1.19 kB
TypeScript
import { default as React } from 'react';
export interface FinDragDropListChip {
text: string;
bg?: string;
color?: string;
radius?: number | string;
height?: number;
px?: number;
}
export interface FinDragDropListProps<T> {
items: T[];
getId: (item: T) => string | number;
onReorder: (newItems: T[]) => void;
header?: React.ReactNode;
disabled?: boolean;
sx?: any;
chipText?: string | ((item: T, index: number) => string | undefined);
helperText?: React.ReactNode | string;
getText?: (item: T) => string;
getChip?: (item: T) => FinDragDropListChip | undefined;
showIndex?: boolean;
showLeftIcon?: boolean;
renderItem?: (item: T, isDragging: boolean) => React.ReactNode;
emptyStateText?: string;
emptyStateButtonText?: string;
onEmptyStateButtonClick?: () => void;
emptyStateSx?: any;
}
export declare function FinDragDropList<T>({ items, getId, onReorder, header, disabled, sx, getText, showIndex, showLeftIcon, renderItem, chipText, helperText, emptyStateText, emptyStateButtonText, onEmptyStateButtonClick, emptyStateSx, }: FinDragDropListProps<T>): import("react/jsx-runtime").JSX.Element;