@etsoo/materialui
Version:
TypeScript Material-UI Implementation
78 lines (77 loc) • 1.91 kB
TypeScript
import React from "react";
import type { CustomFabSize } from "../CustomFabProps";
import type { IStateUpdate, ListItemReact } from "@etsoo/react";
import type { UserKey } from "@etsoo/appscript";
import { ContainerProps } from "@mui/material/Container";
import { Theme } from "@mui/material/styles";
/**
* Common page props
* Default container id is 'pageContainer'
*/
export interface CommonPageProps extends Omit<ContainerProps, "id"> {
/**
* Fab buttons
*/
fabButtons?: React.ReactNode;
/**
* Fab size
*/
fabSize?: CustomFabSize;
/**
* Fab flex column direction, undefined to hide it
*/
fabColumnDirection?: boolean;
/**
* Fab padding adjust
*/
fabPaddingAdjust?: number;
/**
* Add panel to the Fab
*/
fabPanel?: boolean;
/**
* Fab refresh button is supported or not
*/
fabRefresh?: boolean;
/**
* Fab lays in the top
*/
fabTop?: ((theme: Theme, padding: {}) => object) | boolean;
/**
* More actions
*/
moreActions?: ListItemReact[];
/**
* On refresh callback, only when authorized = true
*/
onRefresh?: () => void | PromiseLike<void>;
/**
* On page update, when authorized = null or true case, may uses onRefresh
*/
onUpdate?: () => void | PromiseLike<void>;
/**
* On page update, all cases with authorized
*/
onUpdateAll?: IStateUpdate;
/**
* Paddings
*/
paddings?: number | Record<string, string | number>;
/**
* Scroll container
*/
scrollContainer?: HTMLElement | object;
/**
* Support back click
*/
supportBack?: boolean;
/**
* State last changed fields
*/
targetFields?: UserKey[];
}
/**
* Common page
* @param props Props
*/
export declare function CommonPage(props: CommonPageProps): import("react/jsx-runtime").JSX.Element;