import { CSSProperties, ReactElement, ReactNode } from "react";
export interface ITem {
    id?: string;
    url?: string;
    path: string;
    createdDate?: string;
    type?: string;
    fileName?: string;
    createdBy?: string;
}
export type IData<T> = T & ITem;
export interface StyleObject {
    [key: string]: CSSProperties | StyleObject;
}
export interface Props<T> {
    data: IData<T>[];
    total?: number;
    height?: number;
    value: IData<T>;
    header?: string;
    style?: {
        headerStyle?: CSSProperties;
        containerStyle?: CSSProperties;
        footerStyle?: CSSProperties;
    };
    headerTemplate?: ReactNode | ReactElement | (() => ReactNode | ReactElement);
    footerLeftTemplate?: ReactNode | ReactElement | (() => ReactNode | ReactElement);
    footerCenterTemplate?: ReactNode | ReactElement | (() => ReactNode | ReactElement);
    footerRightTemplate?: ReactNode | ReactElement | (() => ReactNode | ReactElement);
    onSelected?: (value: (IData<T>)) => void;
    fetchNextPage?: () => void;
    openModal?: any;
    handleModal?: any;
}
