Commit 2baef5e8 authored by jim's avatar jim

support typescript

parent 976e610b
import * as React from "react"; import * as React from 'react';
import * as H from "history"; import { RouteProps } from 'react-router';
import { RouteProps } from "react-router";
type authorityFN = () => string; type authorityFN = () => string;
type authority = string | Array<string> | authorityFN | Promise<any>; type authority = string | Array<string> | authorityFN | Promise<any>;
export type IReactComponent<P = any> =
| React.StatelessComponent<P>
| React.ComponentClass<P>
| React.ClassicComponentClass<P>;
interface Secured { interface Secured {
(authority: authority, error?: React.ReactNode): ( (authority: authority, error?: React.ReactNode): <T extends IReactComponent>(
target: React.ReactNode target: T,
) => React.ReactNode; ) => T;
} }
export interface AuthorizedRouteProps extends RouteProps { export interface AuthorizedRouteProps extends RouteProps {
...@@ -18,16 +22,14 @@ export interface AuthorizedRouteProps extends RouteProps { ...@@ -18,16 +22,14 @@ export interface AuthorizedRouteProps extends RouteProps {
export class AuthorizedRoute extends React.Component< export class AuthorizedRoute extends React.Component<
AuthorizedRouteProps, AuthorizedRouteProps,
any any
> { > {}
constructor(props: AuthorizedRouteProps);
}
interface check { interface check {
( <T extends IReactComponent, S extends IReactComponent>(
authority: authority, authority: authority,
target: React.ReactNode, target: T,
Exception: React.ReactNode Exception: S,
): React.ReactNode; ): T | S;
} }
interface AuthorizedProps { interface AuthorizedProps {
...@@ -39,7 +41,6 @@ export class Authorized extends React.Component<AuthorizedProps, any> { ...@@ -39,7 +41,6 @@ export class Authorized extends React.Component<AuthorizedProps, any> {
static Secured: Secured; static Secured: Secured;
static AuthorizedRoute: typeof AuthorizedRoute; static AuthorizedRoute: typeof AuthorizedRoute;
static check: check; static check: check;
constructor(props: AuthorizedProps);
} }
declare function renderAuthorize(currentAuthority: string): typeof Authorized; declare function renderAuthorize(currentAuthority: string): typeof Authorized;
......
...@@ -9,6 +9,7 @@ export interface BarProps { ...@@ -9,6 +9,7 @@ export interface BarProps {
y: number; y: number;
}>; }>;
autoLabel?: boolean; autoLabel?: boolean;
style?: React.CSSProperties;
} }
export default class Bar extends React.Component<BarProps, any> {} export default class Bar extends React.Component<BarProps, any> {}
...@@ -6,6 +6,7 @@ export interface ChartCardProps { ...@@ -6,6 +6,7 @@ export interface ChartCardProps {
footer?: React.ReactNode; footer?: React.ReactNode;
contentHeight?: number; contentHeight?: number;
avatar?: React.ReactNode; avatar?: React.ReactNode;
style?: React.CSSProperties;
} }
export default class ChartCard extends React.Component<ChartCardProps, any> {} export default class ChartCard extends React.Component<ChartCardProps, any> {}
...@@ -2,6 +2,7 @@ import * as React from "react"; ...@@ -2,6 +2,7 @@ import * as React from "react";
export interface FieldProps { export interface FieldProps {
label: React.ReactNode; label: React.ReactNode;
value: React.ReactNode; value: React.ReactNode;
style?: React.CSSProperties;
} }
export default class Field extends React.Component<FieldProps, any> {} export default class Field extends React.Component<FieldProps, any> {}
...@@ -5,6 +5,7 @@ export interface GaugeProps { ...@@ -5,6 +5,7 @@ export interface GaugeProps {
height: number; height: number;
bgColor?: number; bgColor?: number;
percent: number; percent: number;
style?: React.CSSProperties;
} }
export default class Gauge extends React.Component<GaugeProps, any> {} export default class Gauge extends React.Component<GaugeProps, any> {}
import * as React from "react"; import * as React from 'react';
export interface MiniBarProps { export interface MiniBarProps {
color?: string; color?: string;
height: number; height: number;
data: Array<{ data: Array<{
x: number; x: number | string;
y: number; y: number;
}>; }>;
style?: React.CSSProperties;
} }
export default class MiniBar extends React.Component<MiniBarProps, any> {} export default class MiniBar extends React.Component<MiniBarProps, any> {}
...@@ -4,6 +4,7 @@ export interface MiniProgressProps { ...@@ -4,6 +4,7 @@ export interface MiniProgressProps {
color?: string; color?: string;
strokeWidth?: number; strokeWidth?: number;
percent?: number; percent?: number;
style?: React.CSSProperties;
} }
export default class MiniProgress extends React.Component< export default class MiniProgress extends React.Component<
......
import * as React from "react"; import * as React from 'react';
export interface PieProps { export interface PieProps {
animate?: boolean; animate?: boolean;
color?: string; color?: string;
...@@ -7,7 +7,7 @@ export interface PieProps { ...@@ -7,7 +7,7 @@ export interface PieProps {
padding?: [number, number, number, number]; padding?: [number, number, number, number];
percent?: number; percent?: number;
data?: Array<{ data?: Array<{
x: string; x: string | string;
y: number; y: number;
}>; }>;
total?: string; total?: string;
......
...@@ -9,6 +9,7 @@ export interface RadarProps { ...@@ -9,6 +9,7 @@ export interface RadarProps {
label: string; label: string;
value: string; value: string;
}>; }>;
style?: React.CSSProperties;
} }
export default class Radar extends React.Component<RadarProps, any> {} export default class Radar extends React.Component<RadarProps, any> {}
...@@ -5,6 +5,7 @@ export interface TagCloudProps { ...@@ -5,6 +5,7 @@ export interface TagCloudProps {
value: number; value: number;
}>; }>;
height: number; height: number;
style?: React.CSSProperties;
} }
export default class TagCloud extends React.Component<TagCloudProps, any> {} export default class TagCloud extends React.Component<TagCloudProps, any> {}
...@@ -8,6 +8,7 @@ export interface TimelineChartProps { ...@@ -8,6 +8,7 @@ export interface TimelineChartProps {
titleMap: { y1: string; y2: string }; titleMap: { y1: string; y2: string };
padding?: [number, number, number, number]; padding?: [number, number, number, number];
height?: number; height?: number;
style?: React.CSSProperties;
} }
export default class TimelineChart extends React.Component< export default class TimelineChart extends React.Component<
......
import * as React from "react"; import * as React from 'react';
export interface WaterWaveProps { export interface WaterWaveProps {
title: React.ReactNode; title: React.ReactNode;
color?: string; color?: string;
height: number; height: number;
percent: number; percent: number;
style?: React.CSSProperties;
} }
export default class WaterWave extends React.Component<WaterWaveProps, any> {} export default class WaterWave extends React.Component<WaterWaveProps, any> {}
export { default as numeral } from "numeral"; import * as numeral from 'numeral';
export { default as ChartCard } from "./ChartCard"; export { default as ChartCard } from './ChartCard';
export { default as Bar } from "./Bar"; export { default as Bar } from './Bar';
export { default as Pie } from "./Pie"; export { default as Pie } from './Pie';
export { default as Radar } from "./Radar"; export { default as Radar } from './Radar';
export { default as Gauge } from "./Gauge"; export { default as Gauge } from './Gauge';
export { default as MiniArea } from "./MiniArea"; export { default as MiniArea } from './MiniArea';
export { default as MiniBar } from "./MiniBar"; export { default as MiniBar } from './MiniBar';
export { default as MiniProgress } from "./MiniProgress"; export { default as MiniProgress } from './MiniProgress';
export { default as Field } from "./Field"; export { default as Field } from './Field';
export { default as WaterWave } from "./WaterWave"; export { default as WaterWave } from './WaterWave';
export { default as TagCloud } from "./TagCloud"; export { default as TagCloud } from './TagCloud';
export { default as TimelineChart } from "./TimelineChart"; export { default as TimelineChart } from './TimelineChart';
declare const yuan: (value: number | string) => string; declare const yuan: (value: number | string) => string;
......
import * as React from "react"; import * as React from 'react';
export interface DescriptionListProps { export interface DescriptionListProps {
layout?: "horizontal" | "vertical"; layout?: 'horizontal' | 'vertical';
col?: number; col?: number;
title: React.ReactNode; title: React.ReactNode;
gutter?: number; gutter?: number;
size?: "large" | "small"; size?: 'large' | 'small';
style?: React.CSSProperties;
} }
declare class Description extends React.Component< declare class Description extends React.Component<
{ {
term: React.ReactNode; term: React.ReactNode;
style?: React.CSSProperties;
}, },
any any
> {} > {}
......
...@@ -3,6 +3,7 @@ export interface EllipsisProps { ...@@ -3,6 +3,7 @@ export interface EllipsisProps {
tooltip?: boolean; tooltip?: boolean;
length?: number; length?: number;
lines?: number; lines?: number;
style?: React.CSSProperties;
} }
export default class Ellipsis extends React.Component< export default class Ellipsis extends React.Component<
......
...@@ -6,6 +6,7 @@ export interface ExceptionProps { ...@@ -6,6 +6,7 @@ export interface ExceptionProps {
img?: string; img?: string;
actions?: React.ReactNode; actions?: React.ReactNode;
linkElement?: React.ReactNode; linkElement?: React.ReactNode;
style?: React.CSSProperties;
} }
export default class Exception extends React.Component<ExceptionProps, any> {} export default class Exception extends React.Component<ExceptionProps, any> {}
import * as React from "react"; import * as React from 'react';
export interface FooterToolbarProps { export interface FooterToolbarProps {
extra: React.ReactNode; extra: React.ReactNode;
style?: React.CSSProperties;
} }
export default class FooterToolbar extends React.Component< export default class FooterToolbar extends React.Component<
......
import * as React from "react"; import * as React from "react";
export interface GlobalFooterProps { export interface GlobalFooterProps {
links: Array<{ links?: Array<{
title: React.ReactNode; title: React.ReactNode;
href: string; href: string;
blankTarget?: boolean; blankTarget?: boolean;
}>; }>;
copyright: React.ReactNode; copyright?: React.ReactNode;
style?: React.CSSProperties;
} }
export default class GlobalFooter extends React.Component< export default class GlobalFooter extends React.Component<
......
import * as React from "react"; import * as React from 'react';
export interface HeaderSearchProps { export interface HeaderSearchProps {
placeholder?: string; placeholder?: string;
dataSource?: Array<string>; dataSource?: Array<string>;
onSearch?: (value: string) => void; onSearch?: (value: string) => void;
onChange?: (value: string) => void; onChange?: (value: string) => void;
onPressEnter?: (value: string) => void; onPressEnter?: (value: string) => void;
style?: React.CSSProperties;
} }
export default class HeaderSearch extends React.Component< export default class HeaderSearch extends React.Component<
......
import * as React from 'react';
import Button from 'antd/lib/button';
export interface LoginProps {
defaultActiveKey?: string;
onTabChange?: (key: string) => void;
onSubmit?: (error: any, values: any) => void;
}
export interface TabProps {
key?: string;
tab?: React.ReactNode;
}
export class Tab extends React.Component<TabProps, any> {}
export interface LoginItemProps {
name?: string;
rules?: any[];
onGetCaptcha?: () => void;
}
export class LoginItem extends React.Component<LoginItemProps, any> {}
export default class Login extends React.Component<LoginProps, any> {
static Tab: typeof Tab;
static UserName: typeof LoginItem;
static Password: typeof LoginItem;
static Mobile: typeof LoginItem;
static Captcha: typeof LoginItem;
static Submit: typeof Button;
}
import * as React from "react"; import * as React from 'react';
export interface NoticeIconData { export interface NoticeIconData {
avatar: string; avatar?: string;
title: React.ReactNode; title?: React.ReactNode;
description: React.ReactNode; description?: React.ReactNode;
datetime: React.ReactNode; datetime?: React.ReactNode;
extra: React.ReactNode; extra?: React.ReactNode;
style?: React.CSSProperties;
} }
export interface NoticeIconProps { export interface NoticeIconProps {
...@@ -29,8 +30,8 @@ export interface NoticeIconProps { ...@@ -29,8 +30,8 @@ export interface NoticeIconProps {
} }
export interface NoticeIconTabProps { export interface NoticeIconTabProps {
list: Array<NoticeIconData>; list?: Array<NoticeIconData>;
title: string; title?: string;
emptyText?: React.ReactNode; emptyText?: React.ReactNode;
emptyImage?: string; emptyImage?: string;
} }
......
import * as React from "react"; import * as React from 'react';
export interface NumberInfoProps { export interface NumberInfoProps {
title?: React.ReactNode | string; title?: React.ReactNode | string;
subTitle?: React.ReactNode | string; subTitle?: React.ReactNode | string;
total?: React.ReactNode | string; total?: React.ReactNode | string;
status?: "up" | "down"; status?: 'up' | 'down';
theme?: string; theme?: string;
gap?: number; gap?: number;
subTotal?: number; subTotal?: number;
style?: React.CSSProperties;
} }
export default class NumberInfo extends React.Component<NumberInfoProps, any> {} export default class NumberInfo extends React.Component<NumberInfoProps, any> {}
import * as React from "react"; import * as React from 'react';
export interface PageHeaderProps { export interface PageHeaderProps {
title?: React.ReactNode | string; title?: React.ReactNode | string;
logo?: React.ReactNode | string; logo?: React.ReactNode | string;
...@@ -12,6 +12,7 @@ export interface PageHeaderProps { ...@@ -12,6 +12,7 @@ export interface PageHeaderProps {
tabActiveKey?: string; tabActiveKey?: string;
onTabChange?: (key: string) => void; onTabChange?: (key: string) => void;
linkElement?: React.ReactNode; linkElement?: React.ReactNode;
style?: React.CSSProperties;
} }
export default class PageHeader extends React.Component<PageHeaderProps, any> {} export default class PageHeader extends React.Component<PageHeaderProps, any> {}
import * as React from "react"; import * as React from 'react';
export interface ResultProps { export interface ResultProps {
type: "success" | "error"; type: 'success' | 'error';
title: React.ReactNode; title: React.ReactNode;
description?: React.ReactNode; description?: React.ReactNode;
extra?: React.ReactNode; extra?: React.ReactNode;
actions?: React.ReactNode; actions?: React.ReactNode;
style?: React.CSSProperties;
} }
export default class Result extends React.Component<ResultProps, any> {} export default class Result extends React.Component<ResultProps, any> {}
import * as React from "react"; import * as React from 'react';
export interface TagSelectProps { export interface TagSelectProps {
onChange?: (value: Array<string>) => void; onChange?: (value: Array<string>) => void;
expandable?: boolean; expandable?: boolean;
style?: React.CSSProperties;
} }
export interface TagSelectOptionProps { export interface TagSelectOptionProps {
value: string; value: string;
style?: React.CSSProperties;
} }
export class TagSelectOption extends React.Component< export class TagSelectOption extends React.Component<
......
import * as React from "react"; import * as React from 'react';
export interface TrendProps { export interface TrendProps {
colorful?: boolean; colorful?: boolean;
flag: "up" | "down"; flag: 'up' | 'down';
style?: React.CSSProperties;
} }
export default class Trend extends React.Component<TrendProps, any> {} export default class Trend extends React.Component<TrendProps, any> {}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment