Explorar el Código

Components Typings (#3815)

* Trend

* TopNavHeader

* TagSelect

* SiderMenu

* SettingDrawer

* StandardTable

* StandardFormRow

* SelectLang

* Reault

* PageHeaderWrapper

* PageHeaderWrapper

* PageHeader

* NumberInfo

* NoticeIcon

* Login

* code style

* GlobalHeader Footer

* Exception

* Ellipsis

* EditableLinkGroup

* EditableItem

* DescriptionList

* AvticleList

* Update src/components/AvatarList/AvatarItem.d.ts

Co-Authored-By: xiaohuoni <xiaohuoni@users.noreply.github.com>

* Update src/components/Login/index.d.ts

Co-Authored-By: xiaohuoni <xiaohuoni@users.noreply.github.com>

* remove '* as'

* Update src/components/AvatarList/index.d.ts

Co-Authored-By: xiaohuoni <xiaohuoni@users.noreply.github.com>

* TagSelect

* SiderTheme CollapseType MenuMode

* Login
陈小聪 hace 6 años
padre
commit
899950fbfa
Se han modificado 54 ficheros con 429 adiciones y 118 borrados
  1. 13 0
      src/components/ArticleListContent/index.d.ts
  2. 1 1
      src/components/Authorized/AuthorizedRoute.d.ts
  3. 1 1
      src/components/Authorized/index.d.ts
  4. 9 4
      src/components/AvatarList/AvatarItem.d.ts
  5. 7 7
      src/components/AvatarList/index.d.ts
  6. 1 1
      src/components/Charts/Bar/index.d.ts
  7. 1 1
      src/components/Charts/ChartCard/index.d.ts
  8. 1 1
      src/components/Charts/Field/index.d.ts
  9. 1 1
      src/components/Charts/Gauge/index.d.ts
  10. 1 1
      src/components/Charts/MiniArea/index.d.ts
  11. 1 1
      src/components/Charts/MiniBar/index.d.ts
  12. 1 1
      src/components/Charts/MiniProgress/index.d.ts
  13. 1 1
      src/components/Charts/Pie/index.d.ts
  14. 1 1
      src/components/Charts/Radar/index.d.ts
  15. 1 1
      src/components/Charts/TagCloud/index.d.ts
  16. 1 1
      src/components/Charts/TimelineChart/index.d.ts
  17. 1 1
      src/components/Charts/WaterWave/index.d.ts
  18. 1 1
      src/components/CountDown/index.d.ts
  19. 10 8
      src/components/DescriptionList/Description.d.ts
  20. 8 6
      src/components/DescriptionList/index.d.ts
  21. 7 0
      src/components/EditableItem/index.d.ts
  22. 9 0
      src/components/EditableLinkGroup/index.d.ts
  23. 5 5
      src/components/Ellipsis/index.d.ts
  24. 13 5
      src/components/Exception/index.d.ts
  25. 4 3
      src/components/FooterToolbar/index.d.ts
  26. 4 3
      src/components/GlobalFooter/index.d.ts
  27. 26 0
      src/components/GlobalHeader/RightContent.d.ts
  28. 13 0
      src/components/GlobalHeader/index.d.ts
  29. 7 3
      src/components/HeaderDropdown/index.d.ts
  30. 3 3
      src/components/HeaderSearch/index.d.ts
  31. 21 4
      src/components/Login/LoginItem.d.ts
  32. 7 3
      src/components/Login/LoginTab.d.ts
  33. 14 9
      src/components/Login/index.d.ts
  34. 10 5
      src/components/NoticeIcon/NoticeIconTab.d.ts
  35. 6 6
      src/components/NoticeIcon/index.d.ts
  36. 4 3
      src/components/NumberInfo/index.d.ts
  37. 3 3
      src/components/PageHeader/breadcrumb.d.ts
  38. 10 7
      src/components/PageHeader/index.d.ts
  39. 8 0
      src/components/PageHeaderWrapper/GridContent.d.ts
  40. 12 0
      src/components/PageHeaderWrapper/index.d.ts
  41. 7 6
      src/components/Result/index.d.ts
  42. 7 0
      src/components/SelectLang/index.d.ts
  43. 9 0
      src/components/SettingDrawer/BlockCheckbox.d.ts
  44. 10 0
      src/components/SettingDrawer/ThemeColor.d.ts
  45. 24 0
      src/components/SettingDrawer/index.d.ts
  46. 23 0
      src/components/SiderMenu/BaseMenu.d.ts
  47. 11 0
      src/components/SiderMenu/SiderMenu.d.ts
  48. 13 0
      src/components/SiderMenu/index.d.ts
  49. 11 0
      src/components/StandardFormRow/index.d.ts
  50. 19 0
      src/components/StandardTable/index.d.ts
  51. 8 4
      src/components/TagSelect/TagSelectOption.d.ts
  52. 12 5
      src/components/TagSelect/index.d.ts
  53. 25 0
      src/components/TopNavHeader/index.d.ts
  54. 2 1
      src/components/Trend/index.d.ts

+ 13 - 0
src/components/ArticleListContent/index.d.ts

@@ -0,0 +1,13 @@
+import React from 'react';
+
+export interface ApplicationsProps {
+  data: {
+    content?: string;
+    updatedAt?: any;
+    avatar?: string;
+    owner?: string;
+    href?: string;
+  };
+}
+
+export default class ArticleListContent extends React.Component<ApplicationsProps, any> {}

+ 1 - 1
src/components/Authorized/AuthorizedRoute.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 import { RouteProps } from 'react-router';
 
 type authorityFN = (currentAuthority?: string) => boolean;

+ 1 - 1
src/components/Authorized/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 import AuthorizedRoute, { authority } from './AuthorizedRoute';
 export type IReactComponent<P = any> =
   | React.StatelessComponent<P>

+ 9 - 4
src/components/AvatarList/AvatarItem.d.ts

@@ -1,10 +1,15 @@
-import * as React from 'react';
-export interface IAvatarItemProps {
+import React from 'react';
+
+export declare type SizeType = number | 'small' | 'default' | 'large';
+
+export interface AvatarItemProps {
   tips: React.ReactNode;
   src: string;
+  size?: SizeType;
   style?: React.CSSProperties;
+  onClick?: () => void;
 }
 
-export default class AvatarItem extends React.Component<IAvatarItemProps, any> {
-  constructor(props: IAvatarItemProps);
+export default class AvatarItem extends React.Component<AvatarItemProps, any> {
+  constructor(props: AvatarItemProps);
 }

+ 7 - 7
src/components/AvatarList/index.d.ts

@@ -1,14 +1,14 @@
-import * as React from 'react';
-import AvatarItem from './AvatarItem';
+import React from 'react';
+import AvatarItem, { AvatarItemProps, SizeType } from './AvatarItem';
 
-export interface IAvatarListProps {
-  size?: 'large' | 'small' | 'mini' | 'default';
+export interface AvatarListProps {
+  Item?: React.ReactElement<AvatarItemProps>;
+  size?: SizeType;
   maxLength?: number;
   excessItemsStyle?: React.CSSProperties;
   style?: React.CSSProperties;
-  children: React.ReactElement<AvatarItem> | Array<React.ReactElement<AvatarItem>>;
+  children: React.ReactElement<AvatarItemProps> | Array<React.ReactElement<AvatarItemProps>>;
 }
-
-export default class AvatarList extends React.Component<IAvatarListProps, any> {
+export default class AvatarList extends React.Component<AvatarListProps, any> {
   public static Item: typeof AvatarItem;
 }

+ 1 - 1
src/components/Charts/Bar/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IBarProps {
   title: React.ReactNode;
   color?: string;

+ 1 - 1
src/components/Charts/ChartCard/index.d.ts

@@ -1,5 +1,5 @@
 import { CardProps } from 'antd/lib/card';
-import * as React from 'react';
+import React from 'react';
 
 export interface IChartCardProps extends CardProps {
   title: React.ReactNode;

+ 1 - 1
src/components/Charts/Field/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IFieldProps {
   label: React.ReactNode;
   value: React.ReactNode;

+ 1 - 1
src/components/Charts/Gauge/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IGaugeProps {
   title: React.ReactNode;
   color?: string;

+ 1 - 1
src/components/Charts/MiniArea/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 
 // g2已经更新到3.0
 // 不带的写了

+ 1 - 1
src/components/Charts/MiniBar/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IMiniBarProps {
   color?: string;
   height: number;

+ 1 - 1
src/components/Charts/MiniProgress/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IMiniProgressProps {
   target: number;
   color?: string;

+ 1 - 1
src/components/Charts/Pie/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IPieProps {
   animate?: boolean;
   color?: string;

+ 1 - 1
src/components/Charts/Radar/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IRadarProps {
   title?: React.ReactNode;
   height: number;

+ 1 - 1
src/components/Charts/TagCloud/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface ITagCloudProps {
   data: Array<{
     name: string;

+ 1 - 1
src/components/Charts/TimelineChart/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface ITimelineChartProps {
   data: Array<{
     x: number;

+ 1 - 1
src/components/Charts/WaterWave/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface IWaterWaveProps {
   title: React.ReactNode;
   color?: string;

+ 1 - 1
src/components/CountDown/index.d.ts

@@ -1,4 +1,4 @@
-import * as React from 'react';
+import React from 'react';
 export interface ICountDownProps {
   format?: (time: number) => void;
   target: Date | number;

+ 10 - 8
src/components/DescriptionList/Description.d.ts

@@ -1,9 +1,11 @@
-import * as React from 'react';
+import React from 'react';
+import { ColProps } from 'antd/es/col';
 
-export default class Description extends React.Component<
-  {
-    term: React.ReactNode;
-    style?: React.CSSProperties;
-  },
-  any
-> {}
+export interface DescriptionProps extends ColProps {
+  column?: number;
+  key?: string | number;
+  style?: React.CSSProperties;
+  term?: React.ReactNode;
+}
+
+export default class Description extends React.Component<DescriptionProps, any> {}

+ 8 - 6
src/components/DescriptionList/index.d.ts

@@ -1,15 +1,17 @@
-import * as React from 'react';
-import Description from './Description';
+import React from 'react';
+import Description, { DescriptionProps } from './Description';
 
-export interface IDescriptionListProps {
-  layout?: 'horizontal' | 'vertical';
+export interface DescriptionListProps {
+  className?: string;
   col?: number;
-  title: React.ReactNode;
+  description?: DescriptionProps[];
   gutter?: number;
+  layout?: 'horizontal' | 'vertical';
   size?: 'large' | 'small';
   style?: React.CSSProperties;
+  title?: React.ReactNode;
 }
 
-export default class DescriptionList extends React.Component<IDescriptionListProps, any> {
+export default class DescriptionList extends React.Component<DescriptionListProps, any> {
   public static Description: typeof Description;
 }

+ 7 - 0
src/components/EditableItem/index.d.ts

@@ -0,0 +1,7 @@
+import React from 'react';
+
+export interface EditableItemProps {
+  onChange?: (value?: string | string[] | number) => void;
+}
+
+export default class EditableItem extends React.Component<EditableItemProps, any> {}

+ 9 - 0
src/components/EditableLinkGroup/index.d.ts

@@ -0,0 +1,9 @@
+import React from 'react';
+
+export interface EditableLinkGroupProps {
+  links: any[];
+  onAdd: () => void;
+  linkElement: string;
+}
+
+export default class EditableLinkGroup extends React.Component<EditableLinkGroupProps, any> {}

+ 5 - 5
src/components/Ellipsis/index.d.ts

@@ -1,13 +1,13 @@
-import * as React from 'react';
+import React from 'react';
 import { TooltipProps } from 'antd/lib/tooltip';
 
-export interface IEllipsisTooltipProps extends TooltipProps {
+export interface EllipsisTooltipProps extends TooltipProps {
   title?: undefined;
   overlayStyle?: undefined;
 }
 
-export interface IEllipsisProps {
-  tooltip?: boolean | IEllipsisTooltipProps;
+export interface EllipsisProps {
+  tooltip?: boolean | EllipsisTooltipProps;
   length?: number;
   lines?: number;
   style?: React.CSSProperties;
@@ -18,4 +18,4 @@ export interface IEllipsisProps {
 export function getStrFullLength(str: string): number;
 export function cutStrByFullLength(str: string, maxLength: number): string;
 
-export default class Ellipsis extends React.Component<IEllipsisProps, any> {}
+export default class Ellipsis extends React.Component<EllipsisProps, any> {}

+ 13 - 5
src/components/Exception/index.d.ts

@@ -1,15 +1,23 @@
-import * as React from 'react';
-export interface IExceptionProps {
+import React from 'react';
+import * as H from 'history';
+
+export interface ExceptionProps<
+  L = {
+    to: H.LocationDescriptor;
+    href?: H.LocationDescriptor;
+    replace?: boolean;
+    innerRef?: (node: HTMLAnchorElement | null) => void;
+  }
+> {
   type?: '403' | '404' | '500';
   title?: React.ReactNode;
   desc?: React.ReactNode;
   img?: string;
   actions?: React.ReactNode;
-  linkElement?: string | React.ComponentType;
+  linkElement?: string | React.ComponentType<L>;
   style?: React.CSSProperties;
   className?: string;
   backText?: React.ReactNode;
   redirect?: string;
 }
-
-export default class Exception extends React.Component<IExceptionProps, any> {}
+export default class Exception extends React.Component<ExceptionProps, any> {}

+ 4 - 3
src/components/FooterToolbar/index.d.ts

@@ -1,7 +1,8 @@
-import * as React from 'react';
-export interface IFooterToolbarProps {
+import React from 'react';
+export interface FooterToolbarProps {
   extra: React.ReactNode;
   style?: React.CSSProperties;
+  className?: string;
 }
 
-export default class FooterToolbar extends React.Component<IFooterToolbarProps, any> {}
+export default class FooterToolbar extends React.Component<FooterToolbarProps, any> {}

+ 4 - 3
src/components/GlobalFooter/index.d.ts

@@ -1,5 +1,5 @@
-import * as React from 'react';
-export interface IGlobalFooterProps {
+import React from 'react';
+export interface GlobalFooterProps {
   links?: Array<{
     key?: string;
     title: React.ReactNode;
@@ -8,6 +8,7 @@ export interface IGlobalFooterProps {
   }>;
   copyright?: React.ReactNode;
   style?: React.CSSProperties;
+  className?: string;
 }
 
-export default class GlobalFooter extends React.Component<IGlobalFooterProps, any> {}
+export default class GlobalFooter extends React.Component<GlobalFooterProps, any> {}

+ 26 - 0
src/components/GlobalHeader/RightContent.d.ts

@@ -0,0 +1,26 @@
+import React from 'react';
+import { DropDownProps } from 'antd/lib/dropdown';
+import { ClickParam } from 'antd/es/menu';
+import { SiderTheme } from 'antd/es/Layout/Sider';
+
+export interface GlobalHeaderRightProps {
+  notices?: any[];
+  dispatch?: (args: any) => void;
+  currentUser?: {
+    avatar?: string;
+    name?: string;
+    title?: string;
+    group?: string;
+    signature?: string;
+    geographic?: any;
+    tags?: any[];
+    unreadCount: number;
+  };
+  fetchingNotices?: boolean;
+  onNoticeVisibleChange?: (visible: boolean) => void;
+  onMenuClick?: (param: ClickParam) => void;
+  onNoticeClear?: (tabName: string) => void;
+  theme?: SiderTheme;
+}
+
+export default class GlobalHeaderRight extends React.Component<GlobalHeaderRightProps, any> {}

+ 13 - 0
src/components/GlobalHeader/index.d.ts

@@ -0,0 +1,13 @@
+import React from 'react';
+
+export interface GlobalHeaderProps {
+  collapsed?: boolean;
+  onCollapse?: (collapsed: boolean) => void;
+  isMobile?: boolean;
+  logo?: string;
+  onNoticeClear?: (type: string) => void;
+  onMenuClick?: ({ key: string }) => void;
+  onNoticeVisibleChange?: (b: boolean) => void;
+}
+
+export default class GlobalHeader extends React.Component<GlobalHeaderProps, any> {}

+ 7 - 3
src/components/HeaderDropdown/index.d.ts

@@ -1,8 +1,12 @@
-import * as React from 'react';
+import React from 'react';
 import { DropDownProps } from 'antd/lib/dropdown';
 
-export interface IHeaderDropdownProps extends DropDownProps {
+declare type OverlayFunc = () => React.ReactNode;
+
+export interface HeaderDropdownProps extends DropDownProps {
   overlayClassName?: string;
+  overlay: React.ReactNode | OverlayFunc;
+  placement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topCenter' | 'topRight' | 'bottomCenter';
 }
 
-export default class HeaderDropdown extends React.Component<IHeaderDropdownProps, any> {}
+export default class HeaderDropdown extends React.Component<HeaderDropdownProps, any> {}

+ 3 - 3
src/components/HeaderSearch/index.d.ts

@@ -1,5 +1,5 @@
-import * as React from 'react';
-export interface IHeaderSearchProps {
+import React from 'react';
+export interface HeaderSearchProps {
   placeholder?: string;
   dataSource?: string[];
   defaultOpen?: boolean;
@@ -12,4 +12,4 @@ export interface IHeaderSearchProps {
   className?: string;
 }
 
-export default class HeaderSearch extends React.Component<IHeaderSearchProps, any> {}
+export default class HeaderSearch extends React.Component<HeaderSearchProps, any> {}

+ 21 - 4
src/components/Login/LoginItem.d.ts

@@ -1,11 +1,28 @@
-import * as React from 'react';
-export interface ILoginItemProps {
+import React from 'react';
+import { WrappedFormUtils } from 'antd/es/form/Form';
+import ItemMap from './map';
+import { Omit } from 'antd/es/_util/type';
+
+export type WrappedLoginItemProps = Omit<LoginItemProps, 'form' | 'type' | 'updateActive'>;
+export type LoginItemType = { [K in keyof typeof ItemMap]: React.FC<WrappedLoginItemProps> };
+
+export interface LoginItemProps {
   name?: string;
   rules?: any[];
   style?: React.CSSProperties;
-  onGetCaptcha?: () => void;
+  onGetCaptcha?: (event?: MouseEvent) => void;
   placeholder?: string;
   buttonText?: React.ReactNode;
+  onPressEnter?: (e: any) => void;
+  countDown?: number;
+  getCaptchaButtonText?: string;
+  getCaptchaSecondText?: string;
+  updateActive: (activeItem: any) => void;
+  form: WrappedFormUtils;
+  type: string;
+  defaultValue?: string;
+  customprops?: any;
+  onChange?: (e: any) => void;
 }
 
-export default class LoginItem extends React.Component<ILoginItemProps, any> {}
+export default class LoginItem extends React.Component<LoginItemProps, any> {}

+ 7 - 3
src/components/Login/LoginTab.d.ts

@@ -1,7 +1,11 @@
-import * as React from 'react';
+import React from 'react';
 
-export interface ILoginTabProps {
+export interface LoginTabProps {
   key?: string;
   tab?: React.ReactNode;
+  tabUtil: {
+    addTab: (id: any) => void;
+    removeTab: (id: any) => void;
+  };
 }
-export default class LoginTab extends React.Component<ILoginTabProps, any> {}
+export default class LoginTab extends React.Component<LoginTabProps, any> {}

+ 14 - 9
src/components/Login/index.d.ts

@@ -1,20 +1,25 @@
 import Button from 'antd/lib/button';
-import * as React from 'react';
-import LoginItem from './LoginItem';
+import React from 'react';
+import LoginItem, { LoginItemProps, LoginItemType } from './LoginItem';
 import LoginTab from './LoginTab';
+import { WrappedFormUtils } from 'antd/es/form/Form';
+import LoginSubmit from './LoginSubmit';
 
-export interface ILoginProps {
+export interface LoginProps {
   defaultActiveKey?: string;
   onTabChange?: (key: string) => void;
   style?: React.CSSProperties;
   onSubmit?: (error: any, values: any) => void;
+  className?: string;
 }
 
-export default class Login extends React.Component<ILoginProps, any> {
+interface Login extends WrappedFormUtils {}
+declare class Login extends React.Component<LoginProps, any> {
   public static Tab: typeof LoginTab;
-  public static UserName: typeof LoginItem;
-  public static Password: typeof LoginItem;
-  public static Mobile: typeof LoginItem;
-  public static Captcha: typeof LoginItem;
-  public static Submit: typeof Button;
+  public static UserName: React.FC<LoginItemProps>;
+  public static Password: React.FC<LoginItemProps>;
+  public static Mobile: React.FC<LoginItemProps>;
+  public static Captcha: React.FC<LoginItemProps>;
+  public static Submit: typeof LoginSubmit;
 }
+export default Login;

+ 10 - 5
src/components/NoticeIcon/NoticeIconTab.d.ts

@@ -1,7 +1,7 @@
 import { SkeletonProps } from 'antd/lib/skeleton';
-import * as React from 'react';
+import React from 'react';
 
-export interface INoticeIconData {
+export interface NoticeIconData {
   avatar?: string | React.ReactNode;
   title?: React.ReactNode;
   description?: React.ReactNode;
@@ -10,16 +10,21 @@ export interface INoticeIconData {
   style?: React.CSSProperties;
 }
 
-export interface INoticeIconTabProps {
+export interface NoticeIconTabProps {
   count?: number;
   emptyText?: React.ReactNode;
   emptyImage?: string;
-  list?: INoticeIconData[];
+  list?: NoticeIconData[];
   name?: string;
   showClear?: boolean;
   showViewMore?: boolean;
   style?: React.CSSProperties;
   title?: string;
+  data?: any[];
+  onClick: (item: any) => void;
+  onClear: (item: any) => void;
+  locale: any;
+  onViewMore: (e: any) => void;
 }
 
-export default class NoticeIconTab extends React.Component<INoticeIconTabProps, any> {}
+export default class NoticeIconTab extends React.Component<NoticeIconTabProps, any> {}

+ 6 - 6
src/components/NoticeIcon/index.d.ts

@@ -1,14 +1,14 @@
-import * as React from 'react';
-import NoticeIconTab, { INoticeIconData } from './NoticeIconTab';
+import React from 'react';
+import NoticeIconTab, { NoticeIconData } from './NoticeIconTab';
 
-export interface INoticeIconProps {
+export interface NoticeIconProps {
   count?: number;
   bell?: React.ReactNode;
   className?: string;
   loading?: boolean;
   onClear?: (tabName: string) => void;
-  onItemClick?: (item: INoticeIconData, tabProps: INoticeIconProps) => void;
-  onViewMore?: (tabProps: INoticeIconProps) => void;
+  onItemClick?: (item: NoticeIconData, tabProps: NoticeIconProps) => void;
+  onViewMore?: (tabProps: NoticeIconProps, e: MouseEvent) => void;
   onTabChange?: (tabTile: string) => void;
   style?: React.CSSProperties;
   onPopupVisibleChange?: (visible: boolean) => void;
@@ -22,6 +22,6 @@ export interface INoticeIconProps {
   clearClose?: boolean;
 }
 
-export default class NoticeIcon extends React.Component<INoticeIconProps, any> {
+export default class NoticeIcon extends React.Component<NoticeIconProps, any> {
   public static Tab: typeof NoticeIconTab;
 }

+ 4 - 3
src/components/NumberInfo/index.d.ts

@@ -1,5 +1,5 @@
-import * as React from 'react';
-export interface INumberInfoProps {
+import React from 'react';
+export interface NumberInfoProps {
   title?: React.ReactNode | string;
   subTitle?: React.ReactNode | string;
   total?: React.ReactNode | string;
@@ -7,7 +7,8 @@ export interface INumberInfoProps {
   theme?: string;
   gap?: number;
   subTotal?: number;
+  suffix?: string;
   style?: React.CSSProperties;
 }
 
-export default class NumberInfo extends React.Component<INumberInfoProps, any> {}
+export default class NumberInfo extends React.Component<NumberInfoProps, any> {}

+ 3 - 3
src/components/PageHeader/breadcrumb.d.ts

@@ -1,6 +1,6 @@
-import * as React from 'react';
-import { IPageHeaderProps } from './index';
+import React from 'react';
+import { PageHeaderProps } from './index';
 
-export default class BreadcrumbView extends React.Component<IPageHeaderProps, any> {}
+export default class BreadcrumbView extends React.Component<PageHeaderProps, any> {}
 
 export function getBreadcrumb(breadcrumbNameMap: object, url: string): object;

+ 10 - 7
src/components/PageHeader/index.d.ts

@@ -1,28 +1,31 @@
-/// <reference types="history"  />
-import * as React from 'react';
+import React from 'react';
 import { Location } from 'history';
-export interface IPageHeaderProps {
-  title?: React.ReactNode | string;
+
+export interface PageHeaderProps {
+  title?: React.ReactNode | string | number;
   logo?: React.ReactNode | string;
   action?: React.ReactNode | string;
   content?: React.ReactNode;
   extraContent?: React.ReactNode;
   routes?: any[];
   params?: any;
-  breadcrumbList?: Array<{ title: React.ReactNode; href?: string }>;
+  breadcrumbList?: Array<{ title: string | number; href?: string }>;
   tabList?: Array<{ key: string; tab: React.ReactNode }>;
   tabActiveKey?: string;
   tabDefaultActiveKey?: string;
   onTabChange?: (key: string) => void;
   tabBarExtraContent?: React.ReactNode;
-  linkElement?: React.ReactNode;
+  linkElement?: React.ReactNode | string;
   style?: React.CSSProperties;
   home?: React.ReactNode;
   wide?: boolean;
   hiddenBreadcrumb?: boolean;
+  className?: string;
+  loading?: boolean;
+  breadcrumbSeparator?: React.ReactNode;
   location?: Location;
   itemRender: (menuItem: any) => React.ReactNode;
   breadcrumbNameMap?: any;
 }
 
-export default class PageHeader extends React.Component<IPageHeaderProps, any> {}
+export default class PageHeader extends React.Component<PageHeaderProps, any> {}

+ 8 - 0
src/components/PageHeaderWrapper/GridContent.d.ts

@@ -0,0 +1,8 @@
+import React from 'react';
+
+export interface GridContentProps {
+  contentWidth: string;
+  children: React.ReactNode;
+}
+
+export default class GridContent extends React.Component<GridContentProps, any> {}

+ 12 - 0
src/components/PageHeaderWrapper/index.d.ts

@@ -0,0 +1,12 @@
+import React from 'react';
+export interface ResultProps {
+  actions?: React.ReactNode;
+  className?: string;
+  description?: React.ReactNode;
+  extra?: React.ReactNode;
+  style?: React.CSSProperties;
+  title?: React.ReactNode;
+  type: 'success' | 'error';
+}
+
+export default class Result extends React.Component<ResultProps, any> {}

+ 7 - 6
src/components/Result/index.d.ts

@@ -1,11 +1,12 @@
-import * as React from 'react';
-export interface IResultProps {
-  type: 'success' | 'error';
-  title: React.ReactNode;
+import React from 'react';
+export interface ResultProps {
+  actions?: React.ReactNode;
+  className?: string;
   description?: React.ReactNode;
   extra?: React.ReactNode;
-  actions?: React.ReactNode;
   style?: React.CSSProperties;
+  title?: React.ReactNode;
+  type: 'success' | 'error';
 }
 
-export default class Result extends React.Component<IResultProps, any> {}
+export default class Result extends React.Component<ResultProps, any> {}

+ 7 - 0
src/components/SelectLang/index.d.ts

@@ -0,0 +1,7 @@
+import React from 'react';
+
+export interface SelectLangProps {
+  className?: string;
+}
+
+export default class SelectLang extends React.Component<SelectLangProps, any> {}

+ 9 - 0
src/components/SettingDrawer/BlockCheckbox.d.ts

@@ -0,0 +1,9 @@
+import React from 'react';
+
+export interface BlockChecboxProps {
+  value: string;
+  onChange: (key: string) => void;
+  list: any[];
+}
+
+export default class BlockChecbox extends React.Component<BlockChecboxProps, any> {}

+ 10 - 0
src/components/SettingDrawer/ThemeColor.d.ts

@@ -0,0 +1,10 @@
+import React from 'react';
+
+export interface TagProps {
+  color: string;
+  check: boolean;
+  className?: string;
+  onClick?: () => void;
+}
+
+export default class ThemeColor extends React.Component<TagProps, any> {}

+ 24 - 0
src/components/SettingDrawer/index.d.ts

@@ -0,0 +1,24 @@
+import React from 'react';
+import { SiderTheme } from 'antd/es/Layout/Sider';
+
+export interface SettingModelState {
+  navTheme: string | SiderTheme;
+  primaryColor: string;
+  layout: string;
+  contentWidth: string;
+  fixedHeader: boolean;
+  autoHideHeader: boolean;
+  fixSiderbar: boolean;
+  menu: { disableLocal: boolean };
+  title: string;
+  pwa: boolean;
+  iconfontUrl: string;
+  colorWeak: boolean;
+}
+
+export interface SettingDrawerProps {
+  setting?: SettingModelState;
+  dispatch?: (args: any) => void;
+}
+
+export default class SettingDrawer extends React.Component<SettingDrawerProps, any> {}

+ 23 - 0
src/components/SiderMenu/BaseMenu.d.ts

@@ -0,0 +1,23 @@
+import React from 'react';
+import * as H from 'history';
+import { SiderTheme, CollapseType } from 'antd/es/Layout/Sider';
+
+import { MenuMode } from 'antd/es/menu';
+
+export interface BaseMenuProps {
+  flatMenuKeys?: any[];
+  location?: H.Location;
+  onCollapse?: (collapsed: boolean, type?: CollapseType) => void;
+  isMobile?: boolean;
+  openKeys?: any;
+  theme?: SiderTheme;
+  mode?: MenuMode;
+  className?: string;
+  collapsed?: boolean;
+  handleOpenChange?: (openKeys: any[]) => void;
+  menuData?: any[];
+  style?: React.CSSProperties;
+  onOpenChange?: (openKeys: string[]) => void;
+}
+
+export default class BaseMenu extends React.Component<BaseMenuProps, any> {}

+ 11 - 0
src/components/SiderMenu/SiderMenu.d.ts

@@ -0,0 +1,11 @@
+import React from 'react';
+import * as H from 'history';
+import { BaseMenuProps } from './BaseMenu';
+import { SiderTheme } from 'antd/es/Layout/Sider';
+
+export interface SiderMenuProps extends BaseMenuProps {
+  logo?: string;
+  fixSiderbar?: boolean;
+}
+
+export default class SiderMenu extends React.Component<SiderMenuProps, any> {}

+ 13 - 0
src/components/SiderMenu/index.d.ts

@@ -0,0 +1,13 @@
+import React from 'react';
+import { SiderTheme } from 'antd/es/Layout/Sider';
+
+export interface SiderMenuProps {
+  isMobile: boolean;
+  menuData: any[];
+  collapsed: boolean;
+  logo?: string;
+  theme?: SiderTheme;
+  onCollapse: (payload: boolean) => void;
+}
+
+export default class SiderMenuWrapper extends React.Component<SiderMenuProps, any> {}

+ 11 - 0
src/components/StandardFormRow/index.d.ts

@@ -0,0 +1,11 @@
+import React from 'react';
+
+export interface StandardFormRowProps {
+  title: string;
+  last?: boolean;
+  block?: boolean;
+  grid?: boolean;
+  style?: React.CSSProperties;
+}
+
+export default class StandardFormRow extends React.Component<StandardFormRowProps, any> {}

+ 19 - 0
src/components/StandardTable/index.d.ts

@@ -0,0 +1,19 @@
+import React from 'react';
+import { PaginationConfig, SorterResult, TableCurrentDataSource } from 'antd/lib/table';
+
+export interface StandardTableProps {
+  columns: any;
+  onSelectRow: (row: any) => void;
+  data: any;
+  rowKey?: string;
+  selectedRows: any[];
+  onChange?: (
+    pagination: PaginationConfig,
+    filters: Record<keyof any, string[]>,
+    sorter: SorterResult<any>,
+    extra?: TableCurrentDataSource<any>
+  ) => void;
+  loading?: boolean;
+}
+
+export default class StandardTable extends React.Component<StandardTableProps, any> {}

+ 8 - 4
src/components/TagSelect/TagSelectOption.d.ts

@@ -1,8 +1,12 @@
-import * as React from 'react';
+import React from 'react';
 
-export interface ITagSelectOptionProps {
-  value: string | number;
+export interface TagSelectOptionProps {
+  value?: string | number;
   style?: React.CSSProperties;
+  checked?: boolean;
+  onChange?: (value: string | number, state: boolean) => void;
 }
 
-export default class TagSelectOption extends React.Component<ITagSelectOptionProps, any> {}
+export default class TagSelectOption extends React.Component<TagSelectOptionProps, any> {
+  public static isTagSelectOption?: boolean;
+}

+ 12 - 5
src/components/TagSelect/index.d.ts

@@ -1,16 +1,23 @@
-import * as React from 'react';
-import TagSelectOption from './TagSelectOption';
+import React from 'react';
+import TagSelectOption, { TagSelectOptionProps } from './TagSelectOption';
 
-export interface ITagSelectProps {
+export interface TagSelectProps {
   onChange?: (value: string[]) => void;
   expandable?: boolean;
   value?: string[] | number[];
   style?: React.CSSProperties;
   hideCheckAll?: boolean;
-  actionsText?: { expandText?: string; collapseText?: string; selectAllText?: string };
+  actionsText?: {
+    expandText?: React.ReactNode;
+    collapseText?: React.ReactNode;
+    selectAllText?: React.ReactNode;
+  };
+  className: string;
+  Option: TagSelectOptionProps;
+  children: React.ReactElement<TagSelectOption> | Array<React.ReactElement<TagSelectOption>>;
 }
 
-export default class TagSelect extends React.Component<ITagSelectProps, any> {
+export default class TagSelect extends React.Component<TagSelectProps, any> {
   public static Option: typeof TagSelectOption;
   private children:
     | React.ReactElement<TagSelectOption>

+ 25 - 0
src/components/TopNavHeader/index.d.ts

@@ -0,0 +1,25 @@
+import React from 'react';
+import { SiderTheme, CollapseType } from 'antd/es/Layout/Sider';
+import { MenuMode } from 'antd/es/menu';
+
+export interface TopNavHeaderProps {
+  theme: SiderTheme;
+  contentWidth?: string;
+  menuData?: any[];
+  logo?: string;
+  mode?: MenuMode;
+  flatMenuKeys?: any[];
+  onCollapse?: (collapsed: boolean, type?: CollapseType) => void;
+  isMobile?: boolean;
+  openKeys?: any;
+  className?: string;
+  collapsed?: boolean;
+  handleOpenChange?: (openKeys: any[]) => void;
+  style?: React.CSSProperties;
+  onOpenChange?: (openKeys: string[]) => void;
+  onNoticeClear?: (type: string) => void;
+  onMenuClick?: ({ key: string }) => void;
+  onNoticeVisibleChange?: (b: boolean) => void;
+}
+
+export default class TopNavHeader extends React.Component<TopNavHeaderProps, any> {}

+ 2 - 1
src/components/Trend/index.d.ts

@@ -1,10 +1,11 @@
-import * as React from 'react';
+import React from 'react';
 
 export interface ITrendProps {
   colorful?: boolean;
   flag: 'up' | 'down';
   style?: React.CSSProperties;
   reverseColor?: boolean;
+  className?: string;
 }
 
 export default class Trend extends React.Component<ITrendProps, any> {}