import { record } from '@synnaxlabs/x'; import { MouseEvent, MouseEventHandler, ReactElement } from 'react'; import { Button } from '../button'; import { RenderProp } from '../component/renderProp'; export interface ItemRenderProps { index: number; key: K; itemKey: K; className?: string; translate?: number; } export type ItemProps = Omit, "key" | "onSelect" | "translate" | "onClick"> & ItemRenderProps & { draggingOver?: boolean; rightAligned?: boolean; onClick?: MouseEventHandler; onSelect?: (key: K, e: MouseEvent) => void; selected?: boolean; hovered?: boolean; }; export type ItemRenderProp = RenderProp>; /** * itemNameID returns the DOM id for editable name text rendered inside the list item * with the given key. Item assigns the raw key as the row element's own id, so nested * editable text (e.g. Text.edit rename targets) must carry this derived id to keep * DOM ids unique. */ export declare const itemNameID: (itemKey: record.Key) => string; export declare const Item: ({ itemKey, className, index, el, draggingOver, rightAligned, selected, translate, onSelect, onClick, hovered, style, role, ...rest }: ItemProps) => ReactElement; //# sourceMappingURL=Item.d.ts.map