@etsoo/materialui
Version:
TypeScript Material-UI Implementation
57 lines (56 loc) • 1.75 kB
TypeScript
import React from "react";
import type { DataGridPageProps } from "./DataGridPageProps";
import type { ScrollerListExInnerItemRendererProps, ScrollerListExItemSize } from "../ScrollerListEx";
import { ListChildComponentProps } from "react-window";
import { GridMethodRef } from "@etsoo/react";
import type { OperationMessageHandlerAll } from "../messages/OperationMessageHandler";
/**
* Response page props
*/
export type ResponsePageProps<T extends object, F> = DataGridPageProps<T, F> & {
/**
*
* @param height Current height
* @param isGrid Is displaying DataGrid
* @returns Adjusted height
*/
adjustFabHeight?: (height: number, isGrid: boolean) => number;
/**
* Min width to show Datagrid
*/
dataGridMinWidth?: number;
/**
* Inner item renderer
*/
innerItemRenderer: (props: ScrollerListExInnerItemRendererProps<T>) => React.ReactNode;
/**
* Item renderer
*/
itemRenderer?: (props: ListChildComponentProps<T>) => React.ReactElement;
/**
* Item size, a function indicates its a variable size list
*/
itemSize: ScrollerListExItemSize;
/**
* Methods
*/
mRef?: React.MutableRefObject<GridMethodRef<T> | undefined>;
/**
* Pull to refresh data
*/
pullToRefresh?: boolean;
/**
* Quick action for double click or click under mobile
*/
quickAction?: (data: T) => void;
/**
* Operation message handler
*/
operationMessageHandler?: OperationMessageHandlerAll;
};
/**
* Fixed height list page
* @param props Props
* @returns Component
*/
export declare function ResponsivePage<T extends object, F>(props: ResponsePageProps<T, F>): import("react/jsx-runtime").JSX.Element;