Reactstrap: Introduce typings for v5.0 (#20696)

* reactstrap: Create v4 subfolder

* reactstrap@5: change getRef to innerRef
This commit is contained in:
b-szypelow
2017-10-28 02:39:47 +02:00
committed by Sheetal Nandi
parent ceda0b6a49
commit f7f81bced2
82 changed files with 4687 additions and 7 deletions

View File

@@ -1,4 +1,4 @@
// Type definitions for reactstrap 4.6
// Type definitions for reactstrap 5.0
// Project: https://github.com/reactstrap/reactstrap#readme
// Definitions by: Ali Hammad Baig <https://github.com/alihammad>, Marco Falkenberg <https://github.com/mfal>, Danilo Barros <https://github.com/danilobjr>, Fábio Paiva <https://github.com/fabiopaiva>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped

View File

@@ -7,7 +7,7 @@ interface Props extends React.HTMLProps<HTMLButtonElement> {
color?: string;
disabled?: boolean;
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
innerRef?: string | ((instance: HTMLButtonElement) => any);
onClick?: React.MouseEventHandler<any>;
size?: any;

View File

@@ -2,7 +2,7 @@ import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
innerRef?: string | ((instance: HTMLButtonElement) => any);
className?: string;
cssModule?: CSSModule;
href?: string;

View File

@@ -3,7 +3,7 @@ import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLFormElement> {
inline?: boolean;
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
innerRef?: string | ((instance: HTMLButtonElement) => any);
className?: string;
cssModule?: CSSModule;
}

View File

@@ -39,7 +39,7 @@ interface InputProps extends Intermediate {
state?: string;
valid?: boolean;
tag?: React.ReactType;
getRef?: string | ((instance: HTMLInputElement) => any);
innerRef?: string | ((instance: HTMLInputElement) => any);
static?: boolean;
addon?: boolean;
className?: string;

View File

@@ -2,7 +2,7 @@ import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLAnchorElement> {
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
innerRef?: string | ((instance: HTMLButtonElement) => any);
disabled?: boolean;
active?: boolean;
className?: string;

View File

@@ -3302,7 +3302,7 @@ class Example107 extends React.Component {
private input: HTMLInputElement;
render() {
return <Input type="file" getRef={(input) => { this.input = input; }} />;
return <Input type="file" innerRef={(input) => { this.input = input; }} />;
}
}

87
types/reactstrap/v4/index.d.ts vendored Normal file
View File

@@ -0,0 +1,87 @@
// Type definitions for reactstrap 4.6
// Project: https://github.com/reactstrap/reactstrap#readme
// Definitions by: Ali Hammad Baig <https://github.com/alihammad>, Marco Falkenberg <https://github.com/mfal>, Danilo Barros <https://github.com/danilobjr>, Fábio Paiva <https://github.com/fabiopaiva>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 2.3
export interface CSSModule {
[className: string]: string;
}
export { default as Alert } from './lib/Alert';
export { default as Badge } from './lib/Badge';
export { default as Breadcrumb } from './lib/Breadcrumb';
export { default as BreadcrumbItem } from './lib/BreadcrumbItem';
export { default as Button } from './lib/Button';
export { default as ButtonDropdown } from './lib/ButtonDropdown';
export { default as ButtonGroup } from './lib/ButtonGroup';
export { default as ButtonToolbar } from './lib/ButtonToolbar';
export { default as Card } from './lib/Card';
export { default as CardBody } from './lib/CardBody';
export { default as CardBlock } from './lib/CardBlock';
export { default as CardColumns } from './lib/CardColumns';
export { default as CardDeck } from './lib/CardDeck';
export { default as CardFooter } from './lib/CardFooter';
export { default as CardGroup } from './lib/CardGroup';
export { default as CardHeader } from './lib/CardHeader';
export { default as CardImg } from './lib/CardImg';
export { default as CardImgOverlay } from './lib/CardImgOverlay';
export { default as CardLink } from './lib/CardLink';
export { default as CardSubtitle } from './lib/CardSubtitle';
export { default as CardText } from './lib/CardText';
export { default as CardTitle } from './lib/CardTitle';
export { default as Col } from './lib/Col';
export { default as Collapse } from './lib/Collapse';
export { default as Container } from './lib/Container';
export { default as Dropdown } from './lib/Dropdown';
export { default as DropdownItem } from './lib/DropdownItem';
export { default as DropdownMenu } from './lib/DropdownMenu';
export { default as DropdownToggle } from './lib/DropdownToggle';
export { default as Fade } from './lib/Fade';
export { default as Form } from './lib/Form';
export { default as FormFeedback } from './lib/FormFeedback';
export { default as FormGroup } from './lib/FormGroup';
export { default as FormText } from './lib/FormText';
export { default as Input } from './lib/Input';
export { default as InputGroup } from './lib/InputGroup';
export { default as InputGroupAddon } from './lib/InputGroupAddon';
export { default as InputGroupButton } from './lib/InputGroupButton';
export { default as Jumbotron } from './lib/Jumbotron';
export { default as Label } from './lib/Label';
export { default as ListGroup } from './lib/ListGroup';
export { default as ListGroupItem } from './lib/ListGroupItem';
export { default as ListGroupItemHeading } from './lib/ListGroupItemHeading';
export { default as ListGroupItemText } from './lib/ListGroupItemText';
export { default as Media } from './lib/Media';
export { default as Modal } from './lib/Modal';
export { default as ModalBody } from './lib/ModalBody';
export { default as ModalFooter } from './lib/ModalFooter';
export { default as ModalHeader } from './lib/ModalHeader';
export { default as Nav } from './lib/Nav';
export { default as Navbar } from './lib/Navbar';
export { default as NavbarBrand } from './lib/NavbarBrand';
export { default as NavbarToggler } from './lib/NavbarToggler';
export { default as NavDropdown } from './lib/NavDropdown';
export { default as NavItem } from './lib/NavItem';
export { default as NavLink } from './lib/NavLink';
export { default as Pagination } from './lib/Pagination';
export { default as PaginationItem } from './lib/PaginationItem';
export { default as PaginationLink } from './lib/PaginationLink';
export { default as Popover } from './lib/Popover';
export { default as PopoverContent } from './lib/PopoverContent';
export { default as PopoverTitle } from './lib/PopoverTitle';
export { default as Progress } from './lib/Progress';
export { default as Row } from './lib/Row';
export { default as TabContent } from './lib/TabContent';
export { default as Table } from './lib/Table';
export { default as TabPane } from './lib/TabPane';
export { default as Tag } from './lib/Tag';
export { default as TetherContent } from './lib/TetherContent';
export { default as Tooltip } from './lib/Tooltip';
export {
UncontrolledAlert,
UncontrolledButtonDropdown,
UncontrolledDropdown,
UncontrolledNavDropdown,
UncontrolledTooltip
} from './lib/Uncontrolled';

19
types/reactstrap/v4/lib/Alert.d.ts vendored Normal file
View File

@@ -0,0 +1,19 @@
import { CSSModule } from '../index';
export interface UncontrolledProps {
className?: string;
cssModule?: CSSModule;
color?: string;
tag?: React.ReactType;
transitionAppearTimeout?: number;
transitionEnterTimeout?: number;
transitionLeaveTimeout?: number;
}
interface Props extends UncontrolledProps {
isOpen?: boolean;
toggle?: () => void;
}
declare var Alert: React.StatelessComponent<Props>;
export default Alert;

12
types/reactstrap/v4/lib/Badge.d.ts vendored Normal file
View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
color?: string;
pill?: boolean;
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var Badge: React.StatelessComponent<Props>;
export default Badge;

10
types/reactstrap/v4/lib/Breadcrumb.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: string;
className?: string;
cssModule?: CSSModule;
}
declare var Breadcrumb: React.StatelessComponent<Props>;
export default Breadcrumb;

View File

@@ -0,0 +1,15 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
active?: boolean;
className?: string;
cssModule?: CSSModule;
// if a is passed as a string
// this could be href
[others: string]: any;
}
declare var BreadcrumbItem: React.StatelessComponent<Props>;
export default BreadcrumbItem;

21
types/reactstrap/v4/lib/Button.d.ts vendored Normal file
View File

@@ -0,0 +1,21 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLButtonElement> {
outline?: boolean;
active?: boolean;
block?: boolean;
color?: string;
disabled?: boolean;
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
onClick?: React.MouseEventHandler<any>;
size?: any;
id?: string;
style?: React.CSSProperties;
cssModule?: CSSModule;
}
declare var Button: React.StatelessComponent<Props>;
export default Button;

View File

@@ -0,0 +1,12 @@
import {
UncontrolledProps as DropdownUncontrolledProps,
Props as DropdownProps
} from './Dropdown';
// tslint:disable-next-line
export interface UncontrolledProps extends DropdownUncontrolledProps { }
// tslint:disable-next-line
interface Props extends DropdownProps { }
declare var ButtonDropdown: React.StatelessComponent<Props>;
export default ButtonDropdown;

View File

@@ -0,0 +1,14 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
'aria-label'?: string;
className?: string;
cssModule?: CSSModule;
role?: string;
size?: string;
vertical?: boolean;
}
declare var ButtonGroup: React.StatelessComponent<Props>;
export default ButtonGroup;

View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
'aria-label'?: string;
className?: string;
cssModule?: CSSModule;
role?: string;
}
declare var ButtonToolbar: React.StatelessComponent<Props>;
export default ButtonToolbar;

16
types/reactstrap/v4/lib/Card.d.ts vendored Normal file
View File

@@ -0,0 +1,16 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
inverse?: boolean;
color?: string;
block?: boolean;
outline?: boolean;
className?: string;
cssModule?: CSSModule;
style?: React.CSSProperties;
}
declare var Card: React.StatelessComponent<Props>;
export default Card;

11
types/reactstrap/v4/lib/CardBlock.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardBlock: React.StatelessComponent<Props>;
export default CardBlock;

10
types/reactstrap/v4/lib/CardBody.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardBody: React.StatelessComponent<Props>;
export default CardBody;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardColumns: React.StatelessComponent<Props>;
export default CardColumns;

10
types/reactstrap/v4/lib/CardDeck.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardDeck: React.StatelessComponent<Props>;
export default CardDeck;

10
types/reactstrap/v4/lib/CardFooter.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardFooter: React.StatelessComponent<Props>;
export default CardFooter;

10
types/reactstrap/v4/lib/CardGroup.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardGroup: React.StatelessComponent<Props>;
export default CardGroup;

10
types/reactstrap/v4/lib/CardHeader.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardHeader: React.StatelessComponent<Props>;
export default CardHeader;

16
types/reactstrap/v4/lib/CardImg.d.ts vendored Normal file
View File

@@ -0,0 +1,16 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
top?: boolean;
bottom?: boolean;
className?: string;
cssModule?: CSSModule;
src?: string;
width?: string;
height?: string;
alt?: string;
}
declare var CardImg: React.StatelessComponent<Props>;
export default CardImg;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardImgOverlay: React.StatelessComponent<Props>;
export default CardImgOverlay;

12
types/reactstrap/v4/lib/CardLink.d.ts vendored Normal file
View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
className?: string;
cssModule?: CSSModule;
href?: string;
}
declare var CardLink: React.StatelessComponent<Props>;
export default CardLink;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardSubtitle: React.StatelessComponent<Props>;
export default CardSubtitle;

10
types/reactstrap/v4/lib/CardText.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardText: React.StatelessComponent<Props>;
export default CardText;

10
types/reactstrap/v4/lib/CardTitle.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var CardTitle: React.StatelessComponent<Props>;
export default CardTitle;

24
types/reactstrap/v4/lib/Col.d.ts vendored Normal file
View File

@@ -0,0 +1,24 @@
export type ColumnProps
= string
| boolean
| number
| {
size?: boolean | number | string
push?: string | number
pull?: string | number
offset?: string | number
};
interface Props extends React.HTMLProps<HTMLDivElement> {
xs?: ColumnProps;
sm?: ColumnProps;
md?: ColumnProps;
lg?: ColumnProps;
xl?: ColumnProps;
//custom widths
widths?: string[];
}
declare var Col: React.StatelessComponent<Props>;
export default Col;

18
types/reactstrap/v4/lib/Collapse.d.ts vendored Normal file
View File

@@ -0,0 +1,18 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLElement> {
isOpen?: boolean;
classNames?: string;
cssModule?: CSSModule;
tag?: React.ReactType;
navbar?: boolean;
delay?: {
show: number
hide: number
};
onOpened?: () => void;
onClosed?: () => void;
}
declare var Collapse: React.StatelessComponent<Props>;
export default Collapse;

11
types/reactstrap/v4/lib/Container.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
fluid?: boolean;
className?: string;
cssModule?: CSSModule;
}
declare var Container: React.StatelessComponent<Props>;
export default Container;

22
types/reactstrap/v4/lib/Dropdown.d.ts vendored Normal file
View File

@@ -0,0 +1,22 @@
/// <reference types='tether' />
import { CSSModule } from '../index';
export interface UncontrolledProps {
isOpen?: boolean;
toggle?: () => void;
className?: string;
cssModule?: CSSModule;
}
export interface Props extends UncontrolledProps {
disabled?: boolean;
dropup?: boolean;
group?: boolean;
size?: string;
tag?: React.ReactType;
tether?: boolean | Tether.ITetherOptions;
}
declare var Dropdown: React.StatelessComponent<Props>;
export default Dropdown;

View File

@@ -0,0 +1,15 @@
import { CSSModule } from '../index';
interface Props {
disabled?: boolean;
divider?: boolean;
tag?: React.ReactType;
header?: boolean;
onClick?: (event: React.MouseEvent<any>) => void;
className?: string;
cssModule?: CSSModule;
href?: string;
}
declare var DropdownItem: React.StatelessComponent<Props>;
export default DropdownItem;

View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
right?: boolean;
className?: string;
cssModule?: CSSModule;
}
declare var DropdownMenu: React.StatelessComponent<Props>;
export default DropdownMenu;

View File

@@ -0,0 +1,19 @@
import { CSSModule } from '../index';
interface Props {
caret?: boolean;
className?: string;
cssModule?: CSSModule;
disabled?: boolean;
onClick?: React.MouseEventHandler<any>;
'data-toggle'?: string;
'aria-haspopup'?: boolean;
split?: boolean;
tag?: React.ReactType;
nav?: boolean;
color?: string;
size?: string;
}
declare var DropdownToggle: React.StatelessComponent<Props>;
export default DropdownToggle;

20
types/reactstrap/v4/lib/Fade.d.ts vendored Normal file
View File

@@ -0,0 +1,20 @@
import { CSSModule } from '../index';
interface Props {
baseClass?: string;
baseClassIn?: string;
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
transitionAppearTimeout?: number;
transitionEnterTimeout?: number;
transitionLeaveTimeout?: number;
transitionAppear?: boolean;
transitionEnter?: boolean;
transitionLeave?: boolean;
onLeave?: () => void;
onEnter?: () => void;
}
declare var Fade: React.StatelessComponent<Props>;
export default Fade;

12
types/reactstrap/v4/lib/Form.d.ts vendored Normal file
View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLFormElement> {
inline?: boolean;
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
className?: string;
cssModule?: CSSModule;
}
declare var Form: React.StatelessComponent<Props>;
export default Form;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: string;
className?: string;
cssModule?: CSSModule;
}
declare var FormFeedback: React.StatelessComponent<Props>;
export default FormFeedback;

14
types/reactstrap/v4/lib/FormGroup.d.ts vendored Normal file
View File

@@ -0,0 +1,14 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLDivElement> {
row?: boolean;
check?: boolean;
disabled?: boolean;
tag?: React.ReactType;
color?: string;
className?: string;
cssModule?: CSSModule;
}
declare var FormGroup: React.StatelessComponent<Props>;
export default FormGroup;

12
types/reactstrap/v4/lib/FormText.d.ts vendored Normal file
View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
inline?: boolean;
tag?: React.ReactType;
color?: string;
className?: string;
cssModule?: CSSModule;
}
declare var FormText: React.StatelessComponent<Props>;
export default FormText;

52
types/reactstrap/v4/lib/Input.d.ts vendored Normal file
View File

@@ -0,0 +1,52 @@
import { CSSModule } from '../index';
type InputType =
| 'text'
| 'email'
| 'select'
| 'file'
| 'radio'
| 'checkbox'
| 'textarea'
| 'button'
| 'reset'
| 'submit'
| 'date'
| 'datetime-local'
| 'hidden'
| 'image'
| 'month'
| 'number'
| 'range'
| 'search'
| 'tel'
| 'url'
| 'week'
| 'password'
| 'datetime'
| 'time'
| 'color';
// Intermediate interface to "redefine" the type of size to string
// size:number => size:any => size:string
interface Intermediate extends React.InputHTMLAttributes<HTMLInputElement> {
size?: any;
}
interface InputProps extends Intermediate {
type?: InputType;
size?: string;
state?: string;
valid?: boolean;
tag?: React.ReactType;
getRef?: string | ((instance: HTMLInputElement) => any);
static?: boolean;
addon?: boolean;
className?: string;
cssModule?: CSSModule;
// We don't have the property 'static' here because 'static' is a reserved keyword in TypeScript
// Maybe reactstrap will support an 'isStatic' alias in the future
}
declare var Input: React.StatelessComponent<InputProps>;
export default Input;

11
types/reactstrap/v4/lib/InputGroup.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
size?: string;
className?: string;
cssModule?: CSSModule;
}
declare var InputGroup: React.StatelessComponent<Props>;
export default InputGroup;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var InputGroupAddon: React.StatelessComponent<Props>;
export default InputGroupAddon;

View File

@@ -0,0 +1,13 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
groupClassName?: string;
groupAttributes?: any;
className?: string;
cssModule?: CSSModule;
color?: string;
}
declare var InputGroupButton: React.StatelessComponent<Props>;
export default InputGroupButton;

11
types/reactstrap/v4/lib/Jumbotron.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
fluid?: boolean;
className?: string;
cssModule?: CSSModule;
}
declare var Jumbotron: React.StatelessComponent<Props>;
export default Jumbotron;

26
types/reactstrap/v4/lib/Label.d.ts vendored Normal file
View File

@@ -0,0 +1,26 @@
import { CSSModule } from '../index';
import { ColumnProps } from './Col';
interface Intermediate extends React.LabelHTMLAttributes<HTMLLabelElement> {
size?: any;
}
interface Props extends Intermediate {
hidden?: boolean;
check?: boolean;
inline?: boolean;
disabled?: boolean;
size?: string;
for?: string;
tag?: string;
className?: string;
cssModule?: CSSModule;
xs?: ColumnProps;
sm?: ColumnProps;
md?: ColumnProps;
lg?: ColumnProps;
xl?: ColumnProps;
}
declare var Label: React.StatelessComponent<Props>;
export default Label;

11
types/reactstrap/v4/lib/ListGroup.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
flush?: boolean;
className?: string;
cssModule?: CSSModule;
}
declare var ListGroup: React.StatelessComponent<Props>;
export default ListGroup;

View File

@@ -0,0 +1,17 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
active?: boolean;
disabled?: boolean;
color?: string;
action?: boolean;
className?: string;
cssModule?: CSSModule;
href?: string;
onClick?: React.MouseEventHandler<any>;
}
declare var ListGroupItem: React.StatelessComponent<Props>;
export default ListGroupItem;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var ListGroupItemHeading: React.StatelessComponent<Props>;
export default ListGroupItemHeading;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var ListGroupItemText: React.StatelessComponent<Props>;
export default ListGroupItemText;

21
types/reactstrap/v4/lib/Media.d.ts vendored Normal file
View File

@@ -0,0 +1,21 @@
import { CSSModule } from '../index';
interface Props {
body?: boolean;
bottom?: boolean;
className?: string;
cssModule?: CSSModule;
heading?: boolean;
left?: boolean;
list?: boolean;
middle?: boolean;
object?: boolean;
right?: boolean;
tag?: React.ReactType;
top?: boolean;
href?: string;
alt?: string;
}
declare var Media: React.StatelessComponent<Props>;
export default Media;

23
types/reactstrap/v4/lib/Modal.d.ts vendored Normal file
View File

@@ -0,0 +1,23 @@
import { CSSModule } from '../index';
interface Props {
isOpen?: boolean;
autoFocus?: boolean;
size?: string;
toggle?: () => void;
keyboard?: boolean;
backdrop?: boolean | 'static';
onEnter?: () => void;
onExit?: () => void;
className?: string;
cssModule?: CSSModule;
wrapClassName?: string;
modalClassName?: string;
backdropClassName?: string;
contentClassName?: string;
zIndex?: number | string;
fade?: boolean;
}
declare var Modal: React.StatelessComponent<Props>;
export default Modal;

10
types/reactstrap/v4/lib/ModalBody.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var ModalBody: React.StatelessComponent<Props>;
export default ModalBody;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var ModalFooter: React.StatelessComponent<Props>;
export default ModalFooter;

View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
wrapTag?: React.ReactType;
toggle?: () => void;
}
declare var ModalHeader: React.StatelessComponent<Props>;
export default ModalHeader;

17
types/reactstrap/v4/lib/Nav.d.ts vendored Normal file
View File

@@ -0,0 +1,17 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLUListElement> {
inline?: boolean;
disabled?: boolean;
tabs?: boolean;
pills?: boolean;
stacked?: boolean;
navbar?: boolean;
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
vertical?: boolean;
}
declare var Nav: React.StatelessComponent<Props>;
export default Nav;

View File

@@ -0,0 +1,12 @@
import {
UncontrolledProps as DropdownUncontrolledProps,
Props as DropdownProps
} from './Dropdown';
// tslint:disable-next-line
export interface UncontrolledProps extends DropdownUncontrolledProps { }
// tslint:disable-next-line
interface Props extends DropdownProps { }
declare var NavDropdown: React.StatelessComponent<Props>;
export default NavDropdown;

10
types/reactstrap/v4/lib/NavItem.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var NavItem: React.StatelessComponent<Props>;
export default NavItem;

15
types/reactstrap/v4/lib/NavLink.d.ts vendored Normal file
View File

@@ -0,0 +1,15 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLAnchorElement> {
tag?: React.ReactType;
getRef?: string | ((instance: HTMLButtonElement) => any);
disabled?: boolean;
active?: boolean;
className?: string;
cssModule?: CSSModule;
onClick?: React.MouseEventHandler<any>;
href?: string;
}
declare var NavLink: React.StatelessComponent<Props>;
export default NavLink;

20
types/reactstrap/v4/lib/Navbar.d.ts vendored Normal file
View File

@@ -0,0 +1,20 @@
import { CSSModule } from '../index';
interface Props {
light?: boolean;
dark?: boolean;
inverse?: boolean;
full?: boolean;
fixed?: string;
sticky?: string;
color?: string;
role?: string;
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
toggleable?: boolean | string;
expand?: boolean | string;
}
declare var Navbar: React.StatelessComponent<Props>;
export default Navbar;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLAnchorElement> {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var NavbarBrand: React.StatelessComponent<Props>;
export default NavbarBrand;

View File

@@ -0,0 +1,13 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLAnchorElement> {
tag?: React.ReactType;
type?: string;
className?: string;
cssModule?: CSSModule;
right?: boolean;
left?: boolean;
}
declare var NavbarToggler: React.StatelessComponent<Props>;
export default NavbarToggler;

10
types/reactstrap/v4/lib/Pagination.d.ts vendored Normal file
View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
className?: string;
cssModule?: CSSModule;
size?: string;
}
declare var Pagination: React.StatelessComponent<Props>;
export default Pagination;

View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
className?: string;
cssModule?: CSSModule;
active?: boolean;
disabled?: boolean;
tag?: React.ReactType;
}
declare var PaginationItem: React.StatelessComponent<Props>;
export default PaginationItem;

View File

@@ -0,0 +1,13 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps<HTMLAnchorElement> {
'aria-label'?: string;
className?: string;
cssModule?: CSSModule;
next?: boolean;
previous?: boolean;
tag?: React.ReactType;
}
declare var PaginationLink: React.StatelessComponent<Props>;
export default PaginationLink;

34
types/reactstrap/v4/lib/Popover.d.ts vendored Normal file
View File

@@ -0,0 +1,34 @@
/// <reference types='tether' />
import { CSSModule } from '../index';
type Placement
= 'top'
| 'bottom'
| 'left'
| 'right'
| 'top left'
| 'top center'
| 'top right'
| 'right top'
| 'right middle'
| 'right bottom'
| 'bottom right'
| 'bottom center'
| 'bottom left'
| 'left top'
| 'left middle'
| 'left bottom';
interface Props {
placement?: Placement;
target: string;
isOpen?: boolean;
tether?: Tether.ITetherOptions;
className?: string;
cssModule?: CSSModule;
toggle?: () => void;
}
declare var Popover: React.StatelessComponent<Props>;
export default Popover;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var PopoverContent: React.StatelessComponent<Props>;
export default PopoverContent;

View File

@@ -0,0 +1,10 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var PopoverTitle: React.StatelessComponent<Props>;
export default PopoverTitle;

18
types/reactstrap/v4/lib/Progress.d.ts vendored Normal file
View File

@@ -0,0 +1,18 @@
import { CSSModule } from '../index';
interface Props {
bar?: boolean;
multi?: boolean;
tag?: string;
value?: string | number;
max?: string | number;
animated?: boolean;
striped?: boolean;
color?: string;
className?: string;
cssModule?: CSSModule;
barClassName?: string;
}
declare var Progress: React.StatelessComponent<Props>;
export default Progress;

11
types/reactstrap/v4/lib/Row.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props extends React.HTMLProps< HTMLElement> {
className?: string;
cssModule?: CSSModule;
tag?: React.ReactType;
noGutters?: boolean;
}
declare var Row: React.StatelessComponent<Props>;
export default Row;

11
types/reactstrap/v4/lib/TabContent.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
activeTab?: number | string;
className?: string;
cssModule?: CSSModule;
}
declare var TabContent: React.StatelessComponent<Props>;
export default TabContent;

11
types/reactstrap/v4/lib/TabPane.d.ts vendored Normal file
View File

@@ -0,0 +1,11 @@
import { CSSModule } from '../index';
interface Props {
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
tabId?: number | string;
}
declare var TabPane: React.StatelessComponent<Props>;
export default TabPane;

18
types/reactstrap/v4/lib/Table.d.ts vendored Normal file
View File

@@ -0,0 +1,18 @@
import { CSSModule } from '../index';
interface Props {
className?: string;
cssModule?: CSSModule;
size?: string;
bordered?: boolean;
striped?: boolean;
inverse?: boolean;
hover?: boolean;
reflow?: boolean;
responsive?: boolean;
tag?: React.ReactType;
responsiveTag?: React.ReactType;
}
declare var Table: React.StatelessComponent<Props>;
export default Table;

12
types/reactstrap/v4/lib/Tag.d.ts vendored Normal file
View File

@@ -0,0 +1,12 @@
import { CSSModule } from '../index';
interface Props {
color?: string;
pill?: boolean;
tag?: React.ReactType;
className?: string;
cssModule?: CSSModule;
}
declare var Tag: React.StatelessComponent<Props>;
export default Tag;

View File

@@ -0,0 +1,18 @@
/// <reference types='tether' />
import { CSSModule } from '../index';
interface Props {
className?: string;
cssModule?: CSSModule;
arrow?: string;
disabled?: boolean;
isOpen: boolean;
toggle: () => void;
tether: Tether.ITetherOptions;
tetherRef?: (tether: Tether) => void;
style?: React.CSSProperties;
}
declare var TetherContent: React.StatelessComponent<Props>;
export default TetherContent;

43
types/reactstrap/v4/lib/Tooltip.d.ts vendored Normal file
View File

@@ -0,0 +1,43 @@
/// <reference types='tether' />
import { CSSModule } from '../index';
type Placement
= 'top'
| 'bottom'
| 'left'
| 'right'
| 'top left'
| 'top center'
| 'top right'
| 'right top'
| 'right middle'
| 'right bottom'
| 'bottom right'
| 'bottom center'
| 'bottom left'
| 'left top'
| 'left middle'
| 'left bottom';
export interface UncontrolledProps {
placement?: Placement;
target: string;
disabled?: boolean;
tether?: Tether.ITetherOptions;
tetherRef?: (tether: Tether) => void;
className?: string;
cssModule?: CSSModule;
autohide?: boolean;
delay?: number | { show: number, hide: number };
}
interface Props extends UncontrolledProps {
toggle?: () => void;
isOpen?: boolean;
}
declare var Tooltip: React.StatelessComponent<Props>;
export default Tooltip;

View File

@@ -0,0 +1,29 @@
import {
UncontrolledProps as AlertUncontrolledProps
} from './Alert';
import {
UncontrolledProps as ButtonDropdownUncontrolledProps
} from './ButtonDropdown';
import {
UncontrolledProps as DropdownUncontrolledProps
} from './Dropdown';
import {
UncontrolledProps as NavDropdownUncontrolledProps
} from './NavDropdown';
import {
UncontrolledProps as TooltipUncontrolledProps
} from './Tooltip';
declare var UncontrolledAlert: React.StatelessComponent<AlertUncontrolledProps>;
declare var UncontrolledButtonDropdown: React.StatelessComponent<ButtonDropdownUncontrolledProps>;
declare var UncontrolledDropdown: React.StatelessComponent<DropdownUncontrolledProps>;
declare var UncontrolledNavDropdown: React.StatelessComponent<NavDropdownUncontrolledProps>;
declare var UncontrolledTooltip: React.StatelessComponent<TooltipUncontrolledProps>;
export {
UncontrolledAlert,
UncontrolledButtonDropdown,
UncontrolledDropdown,
UncontrolledNavDropdown,
UncontrolledTooltip
}

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,28 @@
{
"compilerOptions": {
"module": "commonjs",
"lib": [
"es6",
"dom"
],
"noImplicitAny": true,
"noImplicitThis": true,
"strictNullChecks": true,
"strictFunctionTypes": true,
"jsx": "react",
"baseUrl": "../../",
"typeRoots": [
"../../"
],
"paths": {
"reactstrap": ["reactstrap/v4"]
},
"types": [],
"noEmit": true,
"forceConsistentCasingInFileNames": true
},
"files": [
"index.d.ts",
"reactstrap-tests.tsx"
]
}

View File

@@ -0,0 +1 @@
{ "extends": "dtslint/dt.json" }