import { type ReactElement, type ReactNode } from 'react'; import { type DataTestId, type StylingProps, type WithChildren } from '@dynatrace/strato-components/core'; import { type IntentProps } from '../../../../core/slots/Intent/Intent.js'; import { DataTableV2ColumnVisibilityState } from '../../features/ColumnVisibility/ColumnVisibility.js'; /** * @public */ export type DataTableV2ToolbarProps = WithChildren & StylingProps & DataTestId; /** * @internal */ export declare function _isDataTableV2Toolbar(child: ReactElement | null): child is ReactElement; /** * Allowed slots for the DataTableToolbar. */ type DataTableV2ToolbarSlots = { visibilitySettings: boolean; columnOrderSettings: boolean; downloadData: boolean; globalLineWrap: boolean; }; /** * Props for the DataTableToolbar items. */ type DataTableV2ToolbarItemProps = { resetColumnVisibility?: DataTableV2ColumnVisibilityState; resetColumnOrder?: string[]; customTrigger?: (props: { hiddenColumnCount: number; totalColumnCount: number; defaultLabel: string; }) => string; intents: Array; }; /** * @internal */ export declare function getToolbarConfig(children: ReactNode): { slots: DataTableV2ToolbarSlots; toolbarItemProps: DataTableV2ToolbarItemProps; }; /** * Toolbar slot component for general actions that affect the entire table. Positioned above the header. * @public */ export declare const DataTableV2Toolbar: (props: WithChildren & StylingProps & DataTestId & import("react").RefAttributes) => React.ReactElement | null; export {};