kea-react
Version:
Componentes comunes de react
47 lines (46 loc) • 1.79 kB
TypeScript
/// <reference types="react" />
import React = require("react");
export interface PaginatedTableState {
selectedPage: number;
selectedPageSize: number;
}
/**Propiedades de una tabla */
export interface TableProps {
/**Cabecera de la tabla. Generalemente esto es un elemento tr */
header: React.ReactNode;
/**Elementos de la tabla */
items?: JSX.Element[];
/**La tabla no acepta elementos children */
children?: never;
}
export interface AsyncPaginatedTableProps {
/**Cabecera de la tabla. Genralmente es un elemento tr */
header: PromiseLike<JSX.Element> | JSX.Element;
items?: PromiseLike<(JSX.Element | (() => JSX.Element))[]> | (JSX.Element | (() => JSX.Element))[];
onChange?: (value: PaginatedTableState) => void;
value?: PaginatedTableState;
/**La tabla no acepta elementos children */
children?: never;
}
/**Propiedades de una tabla asíncrona */
export interface AsyncTableProps {
/**Cabecera de la tabla. Genralmente es un elemento tr */
header: PromiseLike<JSX.Element> | JSX.Element;
items?: PromiseLike<JSX.Element[]> | JSX.Element[];
/**La tabla no acepta elementos children */
children?: never;
}
/**Cabecera de una tabla estilizada */
export declare class TableHeader extends React.Component<{}, {}> {
render(): JSX.Element;
}
/**Componente para un listado general de elementos. Ponga los elementos <tr /> de la tabla en los hijos del elemento*/
export declare class Table extends React.PureComponent<TableProps, {}> {
constructor(props: any);
readonly items: JSX.Element[] | undefined;
readonly TablaVacia: boolean;
componentWillReceiveProps(props: TableProps & {
children;
}): void;
render(): JSX.Element;
}