UNPKG

@ansible/ansible-ui-framework

Version:

A framework for building applications using PatternFly.

30 lines (29 loc) 1.1 kB
import { ModalVariant } from '@patternfly/react-core'; import { ReactNode } from 'react'; interface IManageItemColumn<ItemT extends object> { header: string; cell: (item: ItemT, setItem: (item: ItemT) => void) => ReactNode; } export interface ManageItemsProps<ItemT extends object> { id: string; title: string; description?: string; keyFn: (item: ItemT) => string | number; items: ItemT[]; columns: IManageItemColumn<ItemT>[]; hideColumnHeaders?: boolean; variant?: ModalVariant; saveFn?: (items: ItemT) => unknown; loadFn?: (items: ItemT, data: unknown) => void; hideSelection?: boolean; onSubmit?: (items: ItemT[]) => void; } export declare function useManageItems<ItemT extends object>(options: ManageItemsProps<ItemT>): { openManageItems: () => void; managedItems: ItemT[]; }; export declare function ManageItemsModal<ItemT extends object>(props: ManageItemsProps<ItemT> & { defaultSelectedItems?: ItemT[]; onApplyChanges: (items: ItemT[], selectedItems: ItemT[]) => void; }): import("react/jsx-runtime").JSX.Element; export {};