@toolpad/core
Version:
Dashboard framework powered by Material UI.
57 lines • 1.32 kB
TypeScript
import * as React from 'react';
import { type ListSlots, ListSlotProps } from "./List.js";
import { DataSourceCache } from "./cache.js";
import type { DataModel, DataSource, OmitId } from './types';
export interface CrudProps<D extends DataModel> {
/**
* Server-side [data source](https://mui.com/toolpad/core/react-crud/#data-sources).
*/
dataSource: DataSource<D>;
/**
* Root path to CRUD pages.
*/
rootPath: string;
/**
* Initial number of rows to show per page.
* @default 100
*/
initialPageSize?: number;
/**
* Default form values for a new item.
* @default {}
*/
defaultValues?: Partial<OmitId<D>>;
/**
* [Cache](https://mui.com/toolpad/core/react-crud/#data-caching) for the data source.
*/
dataSourceCache?: DataSourceCache | null;
/**
* The components used for each slot inside.
* @default {}
*/
slots?: {
list: ListSlots;
};
/**
* The props used for each slot inside.
* @default {}
*/
slotProps?: {
list: ListSlotProps;
};
}
/**
*
* Demos:
*
* - [CRUD](https://mui.com/toolpad/core/react-crud/)
*
* API:
*
* - [Crud API](https://mui.com/toolpad/core/api/crud)
*/
declare function Crud<D extends DataModel>(props: CrudProps<D>): React.JSX.Element;
declare namespace Crud {
var propTypes: any;
}
export { Crud };