import type { HandleActionFn, IScopedContext, SchemaNode, ScopedComponentType } from 'jamis-core'; import type { MutableRefObject } from 'react'; import React from 'react'; import type { CRUDProps } from './types'; export declare const useCrudToolbar: (toolbarProps: CRUDProps, scoped: IScopedContext, crudRenderer: ScopedComponentType & { reloadTarget?: (target: string, data?: any) => void; closeTarget?: (target: string, data?: any) => void; }, rest: { timerRef: MutableRefObject | undefined>; search: (values?: any, silent?: boolean, clearSelection?: boolean, forceReload?: boolean) => Promise; handleAction: HandleActionFn; handleQuery: (values: Record, forceReload?: boolean) => void; openFeedback: (dialog: any, ctx: any) => Promise; renderPagination: (toolbar: SchemaNode, showPerPage?: boolean, showStatistics?: boolean) => JSX.Element | null; handleChangePage: (page: number, perPage: number) => void; }) => { renderHeaderToolbar: (childProps: any, toolbarRenderer?: (toolbar: SchemaNode, index: number) => React.ReactNode) => string | number | boolean | React.ReactFragment | JSX.Element | null; renderFooterToolbar: (childProps: Record, toolbarRenderer?: (toolbar: SchemaNode, index: number) => React.ReactNode) => string | number | boolean | React.ReactFragment | JSX.Element | null; hasBulkActionsToolbar: () => boolean; hasBulkActions: () => number | false; hasLoadMore: () => boolean | undefined; };