amis
Version:
一种MIS页面生成工具
122 lines (121 loc) • 3.12 kB
TypeScript
import React from 'react';
import { RendererProps } from '../factory';
import { Schema } from '../types';
import { BaseSchema, SchemaClassName, SchemaObject } from '../Schema';
export declare const ColProps: string[];
export declare type GridColumnObject = {
/**
* 极小屏(<768px)时宽度占比
*/
xs?: number;
/**
* 极小屏(<768px)时是否隐藏该列
*/
xsHidden?: boolean;
/**
* 极小屏(<768px)时宽度偏移量
*/
xsOffset?: number;
/**
* 极小屏(<768px)时宽度右偏移量
*/
xsPull?: number;
/**
* 极小屏(<768px)时宽度左偏移量
*/
xsPush?: number;
/**
* 小屏时(>=768px)宽度占比
*/
sm?: number;
/**
* 小屏时(>=768px)是否隐藏该列
*/
smHidden?: boolean;
/**
* 小屏时(>=768px)宽度偏移量
*/
smOffset?: number;
/**
* 小屏时(>=768px)宽度右偏移量
*/
smPull?: number;
/**
* 小屏时(>=768px)宽度左偏移量
*/
smPush?: number;
/**
* 中屏时(>=992px)宽度占比
*/
md?: number;
/**
* 中屏时(>=992px)是否隐藏该列
*/
mdHidden?: boolean;
/**
* 中屏时(>=992px)宽度偏移量
*/
mdOffset?: number;
/**
* 中屏时(>=992px)宽度右偏移量
*/
mdPull?: number;
/**
* 中屏时(>=992px)宽度左偏移量
*/
mdPush?: number;
/**
* 大屏时(>=1200px)宽度占比
*/
lg?: number;
/**
* 大屏时(>=1200px)是否隐藏该列
*/
lgHidden?: boolean;
/**
* 大屏时(>=1200px)宽度偏移量
*/
lgOffset?: number;
/**
* 大屏时(>=1200px)宽度右偏移量
*/
lgPull?: number;
/**
* 大屏时(>=1200px)宽度左偏移量
*/
lgPush?: number;
mode?: string;
horizontal?: any;
/**
* 列类名
*/
columnClassName?: SchemaClassName;
};
export declare type GridColumn = GridColumnObject & SchemaObject;
export declare type ColumnNode = GridColumn | ColumnArray;
export interface ColumnArray extends Array<ColumnNode> {
}
/**
* Grid 格子布局渲染器。
* 文档:https://baidu.gitee.io/amis/docs/components/grid
*/
export interface GridSchema extends BaseSchema {
/**
* 指定为 Grid 格子布局渲染器。
*/
type: 'grid';
columns: Array<GridColumn>;
}
export interface GridProps extends RendererProps, Omit<GridSchema, 'type' | 'className' | 'columnClassName'> {
itemRender?: (item: any, key: number, length: number, props: any) => JSX.Element;
}
export default class Grid<T> extends React.Component<GridProps & T, object> {
static propsList: Array<string>;
static defaultProps: {};
renderChild(region: string, node: Schema, key: number, length: number): JSX.Element;
renderColumn(column: ColumnNode, key: number, length: number): JSX.Element;
renderColumns(columns: ColumnArray): JSX.Element[];
render(): JSX.Element;
}
export declare class GridRenderer extends Grid<{}> {
}