prosperita-dumbo-react
Version:
Uma biblioteca de componentes React moderna e acessível, desenvolvida para aplicações financeiras com design system consistente.
92 lines • 3.5 kB
TypeScript
import { ChangeEvent, ReactNode } from "react";
type TableRow = {
[key: string]: ReactNode | string | JSX.Element;
};
type OptionType = {
label: string;
value: string;
};
type OptionsActions = {
text: ReactNode;
icon?: ReactNode;
onClick?: () => void;
feature?: boolean;
noPadding?: string;
size: "small" | "large" | "medium" | "extraLarge" | "twoXLarge" | "expressive";
hasIconSvg?: boolean;
width?: string;
};
export type IcolumnType = {
id: string;
label: ReactNode;
name: string;
hasFilter?: boolean;
width?: string;
text: boolean;
value?: string;
placeholder?: string;
options?: OptionType[];
onChange?: (event: React.ChangeEvent<HTMLInputElement> | React.ChangeEvent<HTMLTextAreaElement>) => void;
onChangeMoney?: (event: ChangeEvent<HTMLInputElement | HTMLTextAreaElement>) => void;
onChangeDrop?: (data: {
selectedItem: any;
}) => void;
type?: string;
paddingDrop?: string;
};
export type TableProps = {
columnTitles: IcolumnType[];
clearFilesFilter: boolean;
rowData: TableRow[];
pageSizes: number[];
actions?: OptionsActions[];
label?: ReactNode;
buttons?: ButtonTable[];
pagination?: boolean;
onChangePage?: (event: number) => void;
onChangePageSizes?: (event: number) => void;
search?: boolean;
nofilter?: boolean;
messagedatalength?: ReactNode;
onFilterStateChange?: (isFiltering: boolean, data: TableRow[]) => void;
width?: string;
sizeSearch?: "small" | "large" | "medium";
rowSizes?: string;
label_node?: ReactNode;
columnSizes?: string;
headerAction?: {
active: boolean;
count: number;
margin?: string;
};
onChangeSearch?: (event: React.ChangeEvent<HTMLInputElement>) => void;
stickyFirstColumn?: boolean;
radiusButtonFilter: number;
column_storage_name: string;
widthOverflow?: string;
values?: {
[key: string]: any;
};
totalRecords?: number;
datePicker?: {
label: string;
type?: string;
value?: string;
onChange?: (event: React.ChangeEvent<HTMLInputElement> | React.ChangeEvent<HTMLTextAreaElement>) => void;
};
};
type ButtonTable = {
label: string;
onClick?: () => void;
icon?: string | ReactNode;
kind: "primary" | "secondary" | "tertiary" | "ghost" | "dangerPrimary" | "dangerTertiary" | "dangerGhost";
position?: "right" | "left";
width?: string;
hasIconSvg?: boolean;
dimension?: string;
size?: "small" | "large" | "medium" | "extraLarge" | "twoXLarge" | "expressive";
};
export declare const ContainerFather: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
export declare const TableColumnDrag: ({ columnTitles, pageSizes, rowData, label, buttons, search, sizeSearch, width, messagedatalength, clearFilesFilter, headerAction, actions, columnSizes, rowSizes, radiusButtonFilter, column_storage_name, values, widthOverflow, datePicker, nofilter, onFilterStateChange, onChangeSearch, stickyFirstColumn, onChangePage, onChangePageSizes, totalRecords, label_node, pagination, }: TableProps) => import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=index.d.ts.map