From 1c012ab4f00b236f548506bdba14531ca4be664e Mon Sep 17 00:00:00 2001 From: FaithForHumans Date: Mon, 28 May 2018 23:29:43 -0500 Subject: [PATCH] Replacing reactstrap components with generics. --- types/reactstrap/lib/Alert.d.ts | 15 +++++++-------- types/reactstrap/lib/Badge.d.ts | 7 ++++--- types/reactstrap/lib/Breadcrumb.d.ts | 7 ++++--- types/reactstrap/lib/BreadcrumbItem.d.ts | 7 ++++--- types/reactstrap/lib/Button.d.ts | 6 +++--- types/reactstrap/lib/ButtonDropdown.d.ts | 15 +++++---------- types/reactstrap/lib/ButtonGroup.d.ts | 7 ++++--- types/reactstrap/lib/ButtonToolbar.d.ts | 7 ++++--- types/reactstrap/lib/Card.d.ts | 7 ++++--- types/reactstrap/lib/CardBody.d.ts | 7 ++++--- types/reactstrap/lib/CardColumns.d.ts | 7 ++++--- types/reactstrap/lib/CardDeck.d.ts | 7 ++++--- types/reactstrap/lib/CardFooter.d.ts | 7 ++++--- types/reactstrap/lib/CardGroup.d.ts | 7 ++++--- types/reactstrap/lib/CardHeader.d.ts | 7 ++++--- types/reactstrap/lib/CardImg.d.ts | 7 ++++--- types/reactstrap/lib/CardImgOverlay.d.ts | 7 ++++--- types/reactstrap/lib/CardLink.d.ts | 7 ++++--- types/reactstrap/lib/CardSubtitle.d.ts | 7 ++++--- types/reactstrap/lib/CardText.d.ts | 7 ++++--- types/reactstrap/lib/CardTitle.d.ts | 7 ++++--- types/reactstrap/lib/Carousel.d.ts | 6 +++--- types/reactstrap/lib/CarouselCaption.d.ts | 7 ++++--- types/reactstrap/lib/CarouselControl.d.ts | 7 ++++--- types/reactstrap/lib/CarouselIndicators.d.ts | 7 ++++--- types/reactstrap/lib/CarouselItem.d.ts | 2 +- types/reactstrap/lib/Col.d.ts | 8 +++++--- types/reactstrap/lib/Collapse.d.ts | 6 +++--- types/reactstrap/lib/Container.d.ts | 7 ++++--- types/reactstrap/lib/Dropdown.d.ts | 18 +++++++----------- types/reactstrap/lib/DropdownItem.d.ts | 6 +++--- types/reactstrap/lib/DropdownMenu.d.ts | 7 ++++--- types/reactstrap/lib/DropdownToggle.d.ts | 6 +++--- types/reactstrap/lib/Fade.d.ts | 7 ++++--- types/reactstrap/lib/Form.d.ts | 6 +++--- types/reactstrap/lib/FormFeedback.d.ts | 7 ++++--- types/reactstrap/lib/FormGroup.d.ts | 7 ++++--- types/reactstrap/lib/FormText.d.ts | 7 ++++--- types/reactstrap/lib/Input.d.ts | 6 +++--- types/reactstrap/lib/InputGroup.d.ts | 7 ++++--- types/reactstrap/lib/InputGroupAddon.d.ts | 7 ++++--- .../lib/InputGroupButtonDropdown.d.ts | 7 ++++--- types/reactstrap/lib/InputGroupText.d.ts | 7 ++++--- types/reactstrap/lib/Jumbotron.d.ts | 7 ++++--- types/reactstrap/lib/Label.d.ts | 11 ++++++----- types/reactstrap/lib/ListGroup.d.ts | 7 ++++--- types/reactstrap/lib/ListGroupItem.d.ts | 7 ++++--- types/reactstrap/lib/ListGroupItemHeading.d.ts | 7 ++++--- types/reactstrap/lib/ListGroupItemText.d.ts | 7 ++++--- types/reactstrap/lib/Media.d.ts | 7 ++++--- types/reactstrap/lib/Modal.d.ts | 6 +++--- types/reactstrap/lib/ModalBody.d.ts | 7 ++++--- types/reactstrap/lib/ModalFooter.d.ts | 7 ++++--- types/reactstrap/lib/ModalHeader.d.ts | 7 ++++--- types/reactstrap/lib/Nav.d.ts | 7 ++++--- types/reactstrap/lib/NavItem.d.ts | 7 ++++--- types/reactstrap/lib/NavLink.d.ts | 6 +++--- types/reactstrap/lib/Navbar.d.ts | 7 ++++--- types/reactstrap/lib/NavbarBrand.d.ts | 7 ++++--- types/reactstrap/lib/NavbarToggler.d.ts | 7 ++++--- types/reactstrap/lib/Pagination.d.ts | 7 ++++--- types/reactstrap/lib/PaginationItem.d.ts | 7 ++++--- types/reactstrap/lib/PaginationLink.d.ts | 7 ++++--- types/reactstrap/lib/Popover.d.ts | 6 +++--- types/reactstrap/lib/PopoverBody.d.ts | 7 ++++--- types/reactstrap/lib/PopoverHeader.d.ts | 7 ++++--- types/reactstrap/lib/Progress.d.ts | 6 +++--- types/reactstrap/lib/Row.d.ts | 7 ++++--- types/reactstrap/lib/TabContent.d.ts | 6 +++--- types/reactstrap/lib/TabPane.d.ts | 7 ++++--- types/reactstrap/lib/Table.d.ts | 7 ++++--- types/reactstrap/lib/Tag.d.ts | 7 ++++--- types/reactstrap/lib/Tooltip.d.ts | 14 ++++++-------- types/reactstrap/lib/Uncontrolled.d.ts | 8 ++++---- types/reactstrap/reactstrap-tests.tsx | 2 +- 75 files changed, 294 insertions(+), 249 deletions(-) diff --git a/types/reactstrap/lib/Alert.d.ts b/types/reactstrap/lib/Alert.d.ts index 2a5a0f8dde..73d3469473 100644 --- a/types/reactstrap/lib/Alert.d.ts +++ b/types/reactstrap/lib/Alert.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface UncontrolledProps extends React.HTMLAttributes { +export type UncontrolledProps = React.HTMLAttributes & { className?: string; cssModule?: CSSModule; color?: string; @@ -8,15 +9,13 @@ export interface UncontrolledProps extends React.HTMLAttributes { transitionAppearTimeout?: number; transitionEnterTimeout?: number; transitionLeaveTimeout?: number; -} -export interface UncontrolledAlertProps extends UncontrolledProps { - /* intentionally blank */ -} +} & T; +export type UncontrolledAlertProps = UncontrolledProps; -export interface AlertProps extends UncontrolledAlertProps { +export type AlertProps = UncontrolledAlertProps & { isOpen?: boolean; toggle?: () => void; -} +}; -declare const Alert: React.StatelessComponent; +declare class Alert extends React.Component> {} export default Alert; diff --git a/types/reactstrap/lib/Badge.d.ts b/types/reactstrap/lib/Badge.d.ts index f45c418c52..eccd2ea240 100644 --- a/types/reactstrap/lib/Badge.d.ts +++ b/types/reactstrap/lib/Badge.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface BadgeProps extends React.HTMLAttributes { +export type BadgeProps = React.HTMLAttributes & { color?: string; pill?: boolean; tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const Badge: React.StatelessComponent; +declare class Badge extends React.Component> {} export default Badge; diff --git a/types/reactstrap/lib/Breadcrumb.d.ts b/types/reactstrap/lib/Breadcrumb.d.ts index 74e770de4f..be7c1aab89 100644 --- a/types/reactstrap/lib/Breadcrumb.d.ts +++ b/types/reactstrap/lib/Breadcrumb.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface BreadcrumbProps extends React.HTMLAttributes { +export type BreadcrumbProps = React.HTMLAttributes & { tag?: string; className?: string; cssModule?: CSSModule; -} +} & T; -declare const Breadcrumb: React.StatelessComponent; +declare class Breadcrumb extends React.Component> {} export default Breadcrumb; diff --git a/types/reactstrap/lib/BreadcrumbItem.d.ts b/types/reactstrap/lib/BreadcrumbItem.d.ts index ab2e9cbc4e..614ca34b99 100644 --- a/types/reactstrap/lib/BreadcrumbItem.d.ts +++ b/types/reactstrap/lib/BreadcrumbItem.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface BreadcrumbItemProps extends React.HTMLAttributes { +export type BreadcrumbItemProps = React.HTMLAttributes & { tag?: React.ReactType; active?: boolean; className?: string; @@ -8,7 +9,7 @@ export interface BreadcrumbItemProps extends React.HTMLAttributes { // if a is passed as a string // this could be href [others: string]: any; -} +} & T; -declare const BreadcrumbItem: React.StatelessComponent; +declare class BreadcrumbItem extends React.Component> {} export default BreadcrumbItem; diff --git a/types/reactstrap/lib/Button.d.ts b/types/reactstrap/lib/Button.d.ts index bf75bcec8e..43075dc3dc 100644 --- a/types/reactstrap/lib/Button.d.ts +++ b/types/reactstrap/lib/Button.d.ts @@ -1,7 +1,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface ButtonProps extends React.HTMLProps { +export type ButtonProps = React.HTMLProps & { outline?: boolean; active?: boolean; block?: boolean; @@ -16,7 +16,7 @@ export interface ButtonProps extends React.HTMLProps { style?: React.CSSProperties; cssModule?: CSSModule; -} +} & T; -declare class Button extends React.Component {} +declare class Button extends React.Component> {} export default Button; diff --git a/types/reactstrap/lib/ButtonDropdown.d.ts b/types/reactstrap/lib/ButtonDropdown.d.ts index fd09d6da8f..ebae860bc7 100644 --- a/types/reactstrap/lib/ButtonDropdown.d.ts +++ b/types/reactstrap/lib/ButtonDropdown.d.ts @@ -1,15 +1,10 @@ +import * as React from 'react'; import { UncontrolledDropdownProps, DropdownProps } from './Dropdown'; -export interface UncontrolledProps extends UncontrolledDropdownProps { - /* intentionally blank */ -} -export interface UncontrolledButtonDropdownProps extends UncontrolledProps { - /* intentionally blank */ -} +export type UncontrolledProps = UncontrolledDropdownProps; +export type UncontrolledButtonDropdownProps = UncontrolledProps; -export interface ButtonDropdownProps extends DropdownProps { - /* intentionally blank */ -} +export type ButtonDropdownProps = DropdownProps; -declare const ButtonDropdown: React.StatelessComponent; +declare class ButtonDropdown extends React.Component> {} export default ButtonDropdown; diff --git a/types/reactstrap/lib/ButtonGroup.d.ts b/types/reactstrap/lib/ButtonGroup.d.ts index 10549f5347..27053d271c 100644 --- a/types/reactstrap/lib/ButtonGroup.d.ts +++ b/types/reactstrap/lib/ButtonGroup.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ButtonGroupProps extends React.HTMLAttributes { +export type ButtonGroupProps = React.HTMLAttributes & { tag?: React.ReactType; 'aria-label'?: string; className?: string; @@ -8,7 +9,7 @@ export interface ButtonGroupProps extends React.HTMLAttributes { role?: string; size?: string; vertical?: boolean; -} +} & T; -declare const ButtonGroup: React.StatelessComponent; +declare class ButtonGroup extends React.Component> {} export default ButtonGroup; diff --git a/types/reactstrap/lib/ButtonToolbar.d.ts b/types/reactstrap/lib/ButtonToolbar.d.ts index ebd8733b28..ea258a7c49 100644 --- a/types/reactstrap/lib/ButtonToolbar.d.ts +++ b/types/reactstrap/lib/ButtonToolbar.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ButtonToolbarProps extends React.HTMLAttributes { +export type ButtonToolbarProps = React.HTMLAttributes & { tag?: React.ReactType; 'aria-label'?: string; className?: string; cssModule?: CSSModule; role?: string; -} +} & T; -declare const ButtonToolbar: React.StatelessComponent; +declare class ButtonToolbar extends React.Component> {} export default ButtonToolbar; diff --git a/types/reactstrap/lib/Card.d.ts b/types/reactstrap/lib/Card.d.ts index 0387ae3e94..269a524087 100644 --- a/types/reactstrap/lib/Card.d.ts +++ b/types/reactstrap/lib/Card.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardProps extends React.HTMLAttributes { +export type CardProps = React.HTMLAttributes & { tag?: React.ReactType; inverse?: boolean; color?: string; @@ -10,7 +11,7 @@ export interface CardProps extends React.HTMLAttributes { className?: string; cssModule?: CSSModule; style?: React.CSSProperties; -} +} & T; -declare const Card: React.StatelessComponent; +declare class Card extends React.Component> {} export default Card; diff --git a/types/reactstrap/lib/CardBody.d.ts b/types/reactstrap/lib/CardBody.d.ts index d95ac0d31b..3890cf4650 100644 --- a/types/reactstrap/lib/CardBody.d.ts +++ b/types/reactstrap/lib/CardBody.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardBodyProps extends React.HTMLAttributes { +export type CardBodyProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardBody: React.StatelessComponent; +declare class CardBody extends React.Component> {} export default CardBody; diff --git a/types/reactstrap/lib/CardColumns.d.ts b/types/reactstrap/lib/CardColumns.d.ts index 19f53cc250..be4688edb3 100644 --- a/types/reactstrap/lib/CardColumns.d.ts +++ b/types/reactstrap/lib/CardColumns.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardColumnsProps extends React.HTMLAttributes { +export type CardColumnsProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardColumns: React.StatelessComponent; +declare class CardColumns extends React.Component> {} export default CardColumns; diff --git a/types/reactstrap/lib/CardDeck.d.ts b/types/reactstrap/lib/CardDeck.d.ts index 09b3d39c34..28882603b1 100644 --- a/types/reactstrap/lib/CardDeck.d.ts +++ b/types/reactstrap/lib/CardDeck.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardDeckProps extends React.HTMLAttributes { +export type CardDeckProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardDeck: React.StatelessComponent; +declare class CardDeck extends React.Component> {} export default CardDeck; diff --git a/types/reactstrap/lib/CardFooter.d.ts b/types/reactstrap/lib/CardFooter.d.ts index f1ee324f03..9268ed4e70 100644 --- a/types/reactstrap/lib/CardFooter.d.ts +++ b/types/reactstrap/lib/CardFooter.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardFooterProps extends React.HTMLAttributes { +export type CardFooterProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardFooter: React.StatelessComponent; +declare class CardFooter extends React.Component> {} export default CardFooter; diff --git a/types/reactstrap/lib/CardGroup.d.ts b/types/reactstrap/lib/CardGroup.d.ts index 5bf83900bf..6e0d422656 100644 --- a/types/reactstrap/lib/CardGroup.d.ts +++ b/types/reactstrap/lib/CardGroup.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardGroupProps extends React.HTMLAttributes { +export type CardGroupProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardGroup: React.StatelessComponent; +declare class CardGroup extends React.Component> {} export default CardGroup; diff --git a/types/reactstrap/lib/CardHeader.d.ts b/types/reactstrap/lib/CardHeader.d.ts index d630954e78..821b2d809f 100644 --- a/types/reactstrap/lib/CardHeader.d.ts +++ b/types/reactstrap/lib/CardHeader.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardHeaderProps extends React.HTMLAttributes { +export type CardHeaderProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardHeader: React.StatelessComponent; +declare class CardHeader extends React.Component> {} export default CardHeader; diff --git a/types/reactstrap/lib/CardImg.d.ts b/types/reactstrap/lib/CardImg.d.ts index b4b7021232..e9242704b4 100644 --- a/types/reactstrap/lib/CardImg.d.ts +++ b/types/reactstrap/lib/CardImg.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardImgProps extends React.HTMLAttributes { +export type CardImgProps = React.HTMLAttributes & { tag?: React.ReactType; top?: boolean; bottom?: boolean; @@ -10,7 +11,7 @@ export interface CardImgProps extends React.HTMLAttributes { width?: string; height?: string; alt?: string; -} +} & T; -declare const CardImg: React.StatelessComponent; +declare class CardImg extends React.Component> {} export default CardImg; diff --git a/types/reactstrap/lib/CardImgOverlay.d.ts b/types/reactstrap/lib/CardImgOverlay.d.ts index ccc76fa9c9..7e252f6248 100644 --- a/types/reactstrap/lib/CardImgOverlay.d.ts +++ b/types/reactstrap/lib/CardImgOverlay.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardImgOverlayProps extends React.HTMLAttributes { +export type CardImgOverlayProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardImgOverlay: React.StatelessComponent; +declare class CardImgOverlay extends React.Component> {} export default CardImgOverlay; diff --git a/types/reactstrap/lib/CardLink.d.ts b/types/reactstrap/lib/CardLink.d.ts index 1a24b55658..256d55d31c 100644 --- a/types/reactstrap/lib/CardLink.d.ts +++ b/types/reactstrap/lib/CardLink.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardLinkProps extends React.HTMLAttributes { +export type CardLinkProps = React.HTMLAttributes & { tag?: React.ReactType; innerRef?: React.Ref; className?: string; cssModule?: CSSModule; href?: string; -} +} & T; -declare const CardLink: React.StatelessComponent; +declare class CardLink extends React.Component> {} export default CardLink; diff --git a/types/reactstrap/lib/CardSubtitle.d.ts b/types/reactstrap/lib/CardSubtitle.d.ts index a237c29119..a5285469cd 100644 --- a/types/reactstrap/lib/CardSubtitle.d.ts +++ b/types/reactstrap/lib/CardSubtitle.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardSubtitleProps extends React.HTMLAttributes { +export type CardSubtitleProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardSubtitle: React.StatelessComponent; +declare class CardSubtitle extends React.Component> {} export default CardSubtitle; diff --git a/types/reactstrap/lib/CardText.d.ts b/types/reactstrap/lib/CardText.d.ts index 462c1abef3..b09eea4de7 100644 --- a/types/reactstrap/lib/CardText.d.ts +++ b/types/reactstrap/lib/CardText.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardTextProps extends React.HTMLAttributes { +export type CardTextProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardText: React.StatelessComponent; +declare class CardText extends React.Component> {} export default CardText; diff --git a/types/reactstrap/lib/CardTitle.d.ts b/types/reactstrap/lib/CardTitle.d.ts index 68c5c6120c..6f3e91d26a 100644 --- a/types/reactstrap/lib/CardTitle.d.ts +++ b/types/reactstrap/lib/CardTitle.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CardTitleProps extends React.HTMLAttributes { +export type CardTitleProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const CardTitle: React.StatelessComponent; +declare class CardTitle extends React.Component> {} export default CardTitle; diff --git a/types/reactstrap/lib/Carousel.d.ts b/types/reactstrap/lib/Carousel.d.ts index 1f21364cdf..d4c8de35a5 100644 --- a/types/reactstrap/lib/Carousel.d.ts +++ b/types/reactstrap/lib/Carousel.d.ts @@ -1,7 +1,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface CarouselProps extends React.HTMLProps { +export type CarouselProps = React.HTMLProps & { activeIndex?: number; next: () => void; previous: () => void; @@ -13,7 +13,7 @@ export interface CarouselProps extends React.HTMLProps { mouseExit?: () => void; slide?: boolean; cssModule?: CSSModule -} +} & T; -declare class Carousel extends React.Component {} +declare class Carousel extends React.Component> {} export default Carousel; diff --git a/types/reactstrap/lib/CarouselCaption.d.ts b/types/reactstrap/lib/CarouselCaption.d.ts index 58be0e29b3..2d6eea7d7f 100644 --- a/types/reactstrap/lib/CarouselCaption.d.ts +++ b/types/reactstrap/lib/CarouselCaption.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CarouselCaptionProps extends React.HTMLProps { +export type CarouselCaptionProps = React.HTMLProps & { captionHeader?: string; captionText: string; cssModule?: CSSModule; -} +} & T; -declare const CarouselCaption: React.StatelessComponent; +declare class CarouselCaption extends React.Component> {} export default CarouselCaption; diff --git a/types/reactstrap/lib/CarouselControl.d.ts b/types/reactstrap/lib/CarouselControl.d.ts index 0e94fd5c70..1605c84dd0 100644 --- a/types/reactstrap/lib/CarouselControl.d.ts +++ b/types/reactstrap/lib/CarouselControl.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CarouselControlProps extends React.HTMLProps { +export type CarouselControlProps = React.HTMLProps & { direction: 'prev' | 'next'; onClickHandler: () => void; cssModule?: CSSModule; directionText: string; -} +} & T; -declare const CarouselControl: React.StatelessComponent; +declare class CarouselControl extends React.Component> {} export default CarouselControl; diff --git a/types/reactstrap/lib/CarouselIndicators.d.ts b/types/reactstrap/lib/CarouselIndicators.d.ts index 8a8ead6c06..34c8c16eef 100644 --- a/types/reactstrap/lib/CarouselIndicators.d.ts +++ b/types/reactstrap/lib/CarouselIndicators.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface CarouselIndicatorsProps extends React.HTMLProps { +export type CarouselIndicatorsProps = React.HTMLProps & { items: object[]; activeIndex: number; cssModule?: CSSModule; onClickHandler: (idx: number) => void; -} +} & T; -declare const CarouselIndicators: React.StatelessComponent; +declare class CarouselIndicators extends React.Component> {} export default CarouselIndicators; diff --git a/types/reactstrap/lib/CarouselItem.d.ts b/types/reactstrap/lib/CarouselItem.d.ts index 88e93dfcf1..264d093695 100644 --- a/types/reactstrap/lib/CarouselItem.d.ts +++ b/types/reactstrap/lib/CarouselItem.d.ts @@ -17,5 +17,5 @@ export interface CarouselItemProps extends React.HTMLProps, Transit slide?: boolean; } -declare class CarouselItem extends React.Component {} +declare class CarouselItem extends React.Component {} export default CarouselItem; diff --git a/types/reactstrap/lib/Col.d.ts b/types/reactstrap/lib/Col.d.ts index 57829ac931..5e6a3e8ffa 100644 --- a/types/reactstrap/lib/Col.d.ts +++ b/types/reactstrap/lib/Col.d.ts @@ -1,3 +1,5 @@ +import * as React from 'react'; + export type ColumnProps = string | boolean @@ -10,7 +12,7 @@ export type ColumnProps order?: string | number }; -export interface ColProps extends React.HTMLProps { +export type ColProps = React.HTMLProps & { tag?: React.ReactType; xs?: ColumnProps; sm?: ColumnProps; @@ -20,7 +22,7 @@ export interface ColProps extends React.HTMLProps { //custom widths widths?: string[]; -} +} & T; -declare const Col: React.StatelessComponent; +declare class Col extends React.Component> {} export default Col; diff --git a/types/reactstrap/lib/Collapse.d.ts b/types/reactstrap/lib/Collapse.d.ts index d83ff45666..8123c29b28 100644 --- a/types/reactstrap/lib/Collapse.d.ts +++ b/types/reactstrap/lib/Collapse.d.ts @@ -1,7 +1,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface CollapseProps extends React.HTMLProps { +export type CollapseProps = React.HTMLProps & { isOpen?: boolean; classNames?: string; cssModule?: CSSModule; @@ -18,7 +18,7 @@ export interface CollapseProps extends React.HTMLProps { onExit?: () => void; onExiting?: () => void; onExited?: () => void; -} +} & T; -declare class Collapse extends React.Component {} +declare class Collapse extends React.Component> {} export default Collapse; diff --git a/types/reactstrap/lib/Container.d.ts b/types/reactstrap/lib/Container.d.ts index df2114e773..5497f3e295 100644 --- a/types/reactstrap/lib/Container.d.ts +++ b/types/reactstrap/lib/Container.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ContainerProps extends React.HTMLAttributes { +export type ContainerProps = React.HTMLAttributes & { tag?: React.ReactType; fluid?: boolean; className?: string; cssModule?: CSSModule; -} +} & T; -declare const Container: React.StatelessComponent; +declare class Container extends React.Component> {} export default Container; diff --git a/types/reactstrap/lib/Dropdown.d.ts b/types/reactstrap/lib/Dropdown.d.ts index 4d892fff5c..803ece5bf3 100644 --- a/types/reactstrap/lib/Dropdown.d.ts +++ b/types/reactstrap/lib/Dropdown.d.ts @@ -7,29 +7,25 @@ export type Direction = | "left" | "right" -export interface UncontrolledProps extends React.HTMLAttributes { +export type UncontrolledProps = React.HTMLAttributes & { isOpen?: boolean; toggle?: () => void; className?: string; cssModule?: CSSModule; nav?: boolean; inNavbar?: boolean; -} -export interface UncontrolledDropdownProps extends UncontrolledProps { - /* intentionally blank */ -} +} & T; +export type UncontrolledDropdownProps = UncontrolledProps; -export interface Props extends UncontrolledProps { +export type Props = UncontrolledProps & { disabled?: boolean; direction?: Direction; group?: boolean; size?: string; tag?: React.ReactType; addonType?: boolean | 'prepend' | 'append'; -} -export interface DropdownProps extends Props { - /* intentionally blank */ -} +}; +export type DropdownProps = Props; -declare class Dropdown extends React.Component {} +declare class Dropdown extends React.Component> {} export default Dropdown; diff --git a/types/reactstrap/lib/DropdownItem.d.ts b/types/reactstrap/lib/DropdownItem.d.ts index 723e4707d4..d6b4344d59 100644 --- a/types/reactstrap/lib/DropdownItem.d.ts +++ b/types/reactstrap/lib/DropdownItem.d.ts @@ -1,7 +1,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface DropdownItemProps extends React.HTMLAttributes { +export type DropdownItemProps = React.HTMLAttributes & { disabled?: boolean; divider?: boolean; tag?: React.ReactType; @@ -12,7 +12,7 @@ export interface DropdownItemProps extends React.HTMLAttributes { href?: string; toggle?: boolean; active?: boolean; -} +} & T; -declare class DropdownItem extends React.Component {} +declare class DropdownItem extends React.Component> {} export default DropdownItem; diff --git a/types/reactstrap/lib/DropdownMenu.d.ts b/types/reactstrap/lib/DropdownMenu.d.ts index 8d3cdb6acd..ffb493faa6 100644 --- a/types/reactstrap/lib/DropdownMenu.d.ts +++ b/types/reactstrap/lib/DropdownMenu.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface DropdownMenuProps extends React.HTMLAttributes { +export type DropdownMenuProps = React.HTMLAttributes & { tag?: React.ReactType; right?: boolean; className?: string; cssModule?: CSSModule; flip?: boolean; -} +} & T; -declare const DropdownMenu: React.StatelessComponent; +declare class DropdownMenu extends React.Component> {} export default DropdownMenu; diff --git a/types/reactstrap/lib/DropdownToggle.d.ts b/types/reactstrap/lib/DropdownToggle.d.ts index d02edd50b2..cdb665c6ce 100644 --- a/types/reactstrap/lib/DropdownToggle.d.ts +++ b/types/reactstrap/lib/DropdownToggle.d.ts @@ -1,7 +1,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface DropdownToggleProps extends React.HTMLAttributes { +export type DropdownToggleProps = React.HTMLAttributes & { caret?: boolean; className?: string; cssModule?: CSSModule; @@ -15,7 +15,7 @@ export interface DropdownToggleProps extends React.HTMLAttributes { nav?: boolean; color?: string; size?: string; -} +} & T; -declare class DropdownToggle extends React.Component {} +declare class DropdownToggle extends React.Component> {} export default DropdownToggle; diff --git a/types/reactstrap/lib/Fade.d.ts b/types/reactstrap/lib/Fade.d.ts index 05a13502e1..7e0d4ec775 100644 --- a/types/reactstrap/lib/Fade.d.ts +++ b/types/reactstrap/lib/Fade.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface FadeProps extends React.HTMLAttributes { +export type FadeProps = React.HTMLAttributes & { in?: boolean; baseClass?: string; baseClassIn?: string; @@ -15,7 +16,7 @@ export interface FadeProps extends React.HTMLAttributes { transitionLeave?: boolean; onLeave?: () => void; onEnter?: () => void; -} +} & T; -declare const Fade: React.StatelessComponent; +declare class Fade extends React.Component> {} export default Fade; diff --git a/types/reactstrap/lib/Form.d.ts b/types/reactstrap/lib/Form.d.ts index 3b6f846d08..2b6668b631 100644 --- a/types/reactstrap/lib/Form.d.ts +++ b/types/reactstrap/lib/Form.d.ts @@ -1,13 +1,13 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface FormProps extends React.HTMLProps { +export type FormProps = React.HTMLProps & { inline?: boolean; tag?: React.ReactType; innerRef?: React.Ref; className?: string; cssModule?: CSSModule; -} +} & T; -declare class Form extends React.Component {} +declare class Form extends React.Component> {} export default Form; diff --git a/types/reactstrap/lib/FormFeedback.d.ts b/types/reactstrap/lib/FormFeedback.d.ts index 946aab01d8..78e6f66676 100644 --- a/types/reactstrap/lib/FormFeedback.d.ts +++ b/types/reactstrap/lib/FormFeedback.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface FormFeedbackProps extends React.HTMLAttributes { +export type FormFeedbackProps = React.HTMLAttributes & { tag?: string; className?: string; cssModule?: CSSModule; valid?: boolean; -} +} & T; -declare const FormFeedback: React.StatelessComponent; +declare class FormFeedback extends React.Component> {} export default FormFeedback; diff --git a/types/reactstrap/lib/FormGroup.d.ts b/types/reactstrap/lib/FormGroup.d.ts index 52c96f3060..b463487e07 100644 --- a/types/reactstrap/lib/FormGroup.d.ts +++ b/types/reactstrap/lib/FormGroup.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface FormGroupProps extends React.HTMLProps { +export type FormGroupProps = React.HTMLProps & { row?: boolean; check?: boolean; inline?: boolean; @@ -8,7 +9,7 @@ export interface FormGroupProps extends React.HTMLProps { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const FormGroup: React.StatelessComponent; +declare class FormGroup extends React.Component> {} export default FormGroup; diff --git a/types/reactstrap/lib/FormText.d.ts b/types/reactstrap/lib/FormText.d.ts index 99a3675d6b..378b67d8a8 100644 --- a/types/reactstrap/lib/FormText.d.ts +++ b/types/reactstrap/lib/FormText.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface FormTextProps extends React.HTMLAttributes { +export type FormTextProps = React.HTMLAttributes & { inline?: boolean; tag?: React.ReactType; color?: string; className?: string; cssModule?: CSSModule; -} +} & T; -declare const FormText: React.StatelessComponent; +declare class FormText extends React.Component> {} export default FormText; diff --git a/types/reactstrap/lib/Input.d.ts b/types/reactstrap/lib/Input.d.ts index 9d160ec2c4..87415b7e10 100644 --- a/types/reactstrap/lib/Input.d.ts +++ b/types/reactstrap/lib/Input.d.ts @@ -28,7 +28,7 @@ export type InputType = | 'time' | 'color'; -export interface InputProps extends React.InputHTMLAttributes { +export type InputProps = React.InputHTMLAttributes & { type?: InputType; bsSize?: 'lg' | 'sm'; state?: string; @@ -40,7 +40,7 @@ export interface InputProps extends React.InputHTMLAttributes addon?: boolean; className?: string; cssModule?: CSSModule; -} +} & T; -declare class Input extends React.Component {} +declare class Input extends React.Component> {} export default Input; diff --git a/types/reactstrap/lib/InputGroup.d.ts b/types/reactstrap/lib/InputGroup.d.ts index 468b46f1c5..3a74adb3d8 100644 --- a/types/reactstrap/lib/InputGroup.d.ts +++ b/types/reactstrap/lib/InputGroup.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface InputGroupProps extends React.HTMLAttributes { +export type InputGroupProps = React.HTMLAttributes & { tag?: React.ReactType; size?: string; className?: string; cssModule?: CSSModule; -} +} & T; -declare const InputGroup: React.StatelessComponent; +declare class InputGroup extends React.Component> {} export default InputGroup; diff --git a/types/reactstrap/lib/InputGroupAddon.d.ts b/types/reactstrap/lib/InputGroupAddon.d.ts index 88b4f678c7..a76ae81a35 100644 --- a/types/reactstrap/lib/InputGroupAddon.d.ts +++ b/types/reactstrap/lib/InputGroupAddon.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface InputGroupAddonProps extends React.HTMLAttributes { +export type InputGroupAddonProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; addonType: 'prepend' | 'append'; -} +} & T; -declare const InputGroupAddon: React.StatelessComponent; +declare class InputGroupAddon extends React.Component> {} export default InputGroupAddon; diff --git a/types/reactstrap/lib/InputGroupButtonDropdown.d.ts b/types/reactstrap/lib/InputGroupButtonDropdown.d.ts index 32a129d43d..2bd235f1f0 100644 --- a/types/reactstrap/lib/InputGroupButtonDropdown.d.ts +++ b/types/reactstrap/lib/InputGroupButtonDropdown.d.ts @@ -1,8 +1,9 @@ +import * as React from 'react'; import { DropdownProps } from './Dropdown'; -export interface InputGroupButtonDropdownProps extends DropdownProps { +export type InputGroupButtonDropdownProps = DropdownProps & { addonType: 'prepend' | 'append'; -} +} & T; -declare const InputGroupButtonDropdown: React.StatelessComponent; +declare class InputGroupButtonDropdown extends React.Component> {} export default InputGroupButtonDropdown; diff --git a/types/reactstrap/lib/InputGroupText.d.ts b/types/reactstrap/lib/InputGroupText.d.ts index 356babe8f4..e8b5a7acfc 100644 --- a/types/reactstrap/lib/InputGroupText.d.ts +++ b/types/reactstrap/lib/InputGroupText.d.ts @@ -1,9 +1,10 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface InputGroupTextProps extends React.HTMLAttributes { +export type InputGroupTextProps = React.HTMLAttributes & { tag?: React.ReactType; cssModule?: CSSModule; -} +} & T; -declare const InputGroupText: React.StatelessComponent; +declare class InputGroupText extends React.Component> {} export default InputGroupText; diff --git a/types/reactstrap/lib/Jumbotron.d.ts b/types/reactstrap/lib/Jumbotron.d.ts index 9145e73223..8b4fc45652 100644 --- a/types/reactstrap/lib/Jumbotron.d.ts +++ b/types/reactstrap/lib/Jumbotron.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface JumbotronProps extends React.HTMLAttributes { +export type JumbotronProps = React.HTMLAttributes & { tag?: React.ReactType; fluid?: boolean; className?: string; cssModule?: CSSModule; -} +} & T; -declare const Jumbotron: React.StatelessComponent; +declare class Jumbotron extends React.Component> {} export default Jumbotron; diff --git a/types/reactstrap/lib/Label.d.ts b/types/reactstrap/lib/Label.d.ts index ae73e100f4..5669a63bad 100644 --- a/types/reactstrap/lib/Label.d.ts +++ b/types/reactstrap/lib/Label.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; import { ColumnProps } from './Col'; -interface Intermediate extends React.LabelHTMLAttributes { +type Intermediate = React.LabelHTMLAttributes & { size?: any; -} +}; -export interface LabelProps extends Intermediate { +export type LabelProps = Intermediate & { hidden?: boolean; check?: boolean; inline?: boolean; @@ -20,7 +21,7 @@ export interface LabelProps extends Intermediate { md?: ColumnProps; lg?: ColumnProps; xl?: ColumnProps; -} +} & T; -declare const Label: React.StatelessComponent; +declare class Label extends React.Component> {} export default Label; diff --git a/types/reactstrap/lib/ListGroup.d.ts b/types/reactstrap/lib/ListGroup.d.ts index e9cb511cf0..2c69fcf294 100644 --- a/types/reactstrap/lib/ListGroup.d.ts +++ b/types/reactstrap/lib/ListGroup.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ListGroupProps extends React.HTMLAttributes { +export type ListGroupProps = React.HTMLAttributes & { tag?: React.ReactType; flush?: boolean; className?: string; cssModule?: CSSModule; -} +} & T; -declare const ListGroup: React.StatelessComponent; +declare class ListGroup extends React.Component> {} export default ListGroup; diff --git a/types/reactstrap/lib/ListGroupItem.d.ts b/types/reactstrap/lib/ListGroupItem.d.ts index 045aa9539e..3d4553aa7b 100644 --- a/types/reactstrap/lib/ListGroupItem.d.ts +++ b/types/reactstrap/lib/ListGroupItem.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ListGroupItemProps extends React.HTMLAttributes { +export type ListGroupItemProps = React.HTMLAttributes & { tag?: React.ReactType; active?: boolean; disabled?: boolean; @@ -11,7 +12,7 @@ export interface ListGroupItemProps extends React.HTMLAttributes { href?: string; onClick?: React.MouseEventHandler; -} +} & T; -declare const ListGroupItem: React.StatelessComponent; +declare class ListGroupItem extends React.Component> {} export default ListGroupItem; diff --git a/types/reactstrap/lib/ListGroupItemHeading.d.ts b/types/reactstrap/lib/ListGroupItemHeading.d.ts index 09e29f9434..c4f04e0330 100644 --- a/types/reactstrap/lib/ListGroupItemHeading.d.ts +++ b/types/reactstrap/lib/ListGroupItemHeading.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ListGroupItemHeadingProps extends React.HTMLAttributes { +export type ListGroupItemHeadingProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const ListGroupItemHeading: React.StatelessComponent; +declare class ListGroupItemHeading extends React.Component> {} export default ListGroupItemHeading; diff --git a/types/reactstrap/lib/ListGroupItemText.d.ts b/types/reactstrap/lib/ListGroupItemText.d.ts index 947ee4cd7a..6fa1153ae2 100644 --- a/types/reactstrap/lib/ListGroupItemText.d.ts +++ b/types/reactstrap/lib/ListGroupItemText.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ListGroupItemTextProps extends React.HTMLAttributes { +export type ListGroupItemTextProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const ListGroupItemText: React.StatelessComponent; +declare class ListGroupItemText extends React.Component> {} export default ListGroupItemText; diff --git a/types/reactstrap/lib/Media.d.ts b/types/reactstrap/lib/Media.d.ts index f7a9afb2c0..b64eeffd7f 100644 --- a/types/reactstrap/lib/Media.d.ts +++ b/types/reactstrap/lib/Media.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface MediaProps extends React.HTMLAttributes { +export type MediaProps = React.HTMLAttributes & { body?: boolean; bottom?: boolean; className?: string; @@ -15,7 +16,7 @@ export interface MediaProps extends React.HTMLAttributes { top?: boolean; href?: string; alt?: string; -} +} & T; -declare const Media: React.StatelessComponent; +declare class Media extends React.Component> {} export default Media; diff --git a/types/reactstrap/lib/Modal.d.ts b/types/reactstrap/lib/Modal.d.ts index 1049ec7918..f2761bbc91 100644 --- a/types/reactstrap/lib/Modal.d.ts +++ b/types/reactstrap/lib/Modal.d.ts @@ -2,7 +2,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; import { FadeProps } from './Fade'; -export interface ModalProps extends React.HTMLAttributes { +export type ModalProps = React.HTMLAttributes & { isOpen?: boolean; autoFocus?: boolean; size?: string; @@ -27,7 +27,7 @@ export interface ModalProps extends React.HTMLAttributes { external?: React.ReactNode; labelledBy?: string; role?: string; -} +} & T; -declare class Modal extends React.Component {} +declare class Modal extends React.Component> {} export default Modal; diff --git a/types/reactstrap/lib/ModalBody.d.ts b/types/reactstrap/lib/ModalBody.d.ts index 083ac04186..4817e64bf4 100644 --- a/types/reactstrap/lib/ModalBody.d.ts +++ b/types/reactstrap/lib/ModalBody.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ModalBodyProps extends React.HTMLAttributes { +export type ModalBodyProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const ModalBody: React.StatelessComponent; +declare class ModalBody extends React.Component> {} export default ModalBody; diff --git a/types/reactstrap/lib/ModalFooter.d.ts b/types/reactstrap/lib/ModalFooter.d.ts index 40ed54f9ae..7997d6931a 100644 --- a/types/reactstrap/lib/ModalFooter.d.ts +++ b/types/reactstrap/lib/ModalFooter.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ModalFooterProps extends React.HTMLAttributes { +export type ModalFooterProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const ModalFooter: React.StatelessComponent; +declare class ModalFooter extends React.Component> {} export default ModalFooter; diff --git a/types/reactstrap/lib/ModalHeader.d.ts b/types/reactstrap/lib/ModalHeader.d.ts index c1a3e55b7a..9e37201941 100644 --- a/types/reactstrap/lib/ModalHeader.d.ts +++ b/types/reactstrap/lib/ModalHeader.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface ModalHeaderProps extends React.HTMLAttributes { +export type ModalHeaderProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; wrapTag?: React.ReactType; toggle?: () => void; -} +} & T; -declare const ModalHeader: React.StatelessComponent; +declare class ModalHeader extends React.Component> {} export default ModalHeader; diff --git a/types/reactstrap/lib/Nav.d.ts b/types/reactstrap/lib/Nav.d.ts index d96ab6e5d6..6868b01665 100644 --- a/types/reactstrap/lib/Nav.d.ts +++ b/types/reactstrap/lib/Nav.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface NavProps extends React.HTMLProps { +export type NavProps = React.HTMLProps & { tabs?: boolean; pills?: boolean; vertical?: boolean | string; @@ -12,7 +13,7 @@ export interface NavProps extends React.HTMLProps { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const Nav: React.StatelessComponent; +declare class Nav extends React.Component> {} export default Nav; diff --git a/types/reactstrap/lib/NavItem.d.ts b/types/reactstrap/lib/NavItem.d.ts index e42e4c8e5e..969369bfee 100644 --- a/types/reactstrap/lib/NavItem.d.ts +++ b/types/reactstrap/lib/NavItem.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface NavItemProps extends React.HTMLAttributes { +export type NavItemProps = React.HTMLAttributes & { tag?: React.ReactType; active?: boolean; className?: string; cssModule?: CSSModule; -} +} & T; -declare const NavItem: React.StatelessComponent; +declare class NavItem extends React.Component> {} export default NavItem; diff --git a/types/reactstrap/lib/NavLink.d.ts b/types/reactstrap/lib/NavLink.d.ts index 0fdfdec641..4e88666c22 100644 --- a/types/reactstrap/lib/NavLink.d.ts +++ b/types/reactstrap/lib/NavLink.d.ts @@ -1,7 +1,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface NavLinkProps extends React.HTMLProps { +export type NavLinkProps = React.HTMLProps & { tag?: React.ReactType; innerRef?: React.Ref; disabled?: boolean; @@ -10,7 +10,7 @@ export interface NavLinkProps extends React.HTMLProps { cssModule?: CSSModule; onClick?: React.MouseEventHandler; href?: string; -} +} & T; -declare class NavLink extends React.Component {} +declare class NavLink extends React.Component> {} export default NavLink; diff --git a/types/reactstrap/lib/Navbar.d.ts b/types/reactstrap/lib/Navbar.d.ts index 83e720731a..39d7340d79 100644 --- a/types/reactstrap/lib/Navbar.d.ts +++ b/types/reactstrap/lib/Navbar.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface NavbarProps extends React.HTMLAttributes { +export type NavbarProps = React.HTMLAttributes & { light?: boolean; dark?: boolean; inverse?: boolean; @@ -14,7 +15,7 @@ export interface NavbarProps extends React.HTMLAttributes { cssModule?: CSSModule; toggleable?: boolean | string; expand?: boolean | string; -} +} & T; -declare const Navbar: React.StatelessComponent; +declare class Navbar extends React.Component> {} export default Navbar; diff --git a/types/reactstrap/lib/NavbarBrand.d.ts b/types/reactstrap/lib/NavbarBrand.d.ts index 83ac8367b5..f7a814b31b 100644 --- a/types/reactstrap/lib/NavbarBrand.d.ts +++ b/types/reactstrap/lib/NavbarBrand.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface NavbarBrandProps extends React.HTMLProps { +export type NavbarBrandProps = React.HTMLProps & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const NavbarBrand: React.StatelessComponent; +declare class NavbarBrand extends React.Component> {} export default NavbarBrand; diff --git a/types/reactstrap/lib/NavbarToggler.d.ts b/types/reactstrap/lib/NavbarToggler.d.ts index 542b671d28..b3dbedb20f 100644 --- a/types/reactstrap/lib/NavbarToggler.d.ts +++ b/types/reactstrap/lib/NavbarToggler.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface NavbarTogglerProps extends React.HTMLProps { +export type NavbarTogglerProps = React.HTMLProps & { tag?: React.ReactType; type?: string; className?: string; cssModule?: CSSModule; -} +} & T; -declare const NavbarToggler: React.StatelessComponent; +declare class NavbarToggler extends React.Component> {} export default NavbarToggler; diff --git a/types/reactstrap/lib/Pagination.d.ts b/types/reactstrap/lib/Pagination.d.ts index 9dabaf8829..15f30547b7 100644 --- a/types/reactstrap/lib/Pagination.d.ts +++ b/types/reactstrap/lib/Pagination.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface PaginationProps extends React.HTMLAttributes { +export type PaginationProps = React.HTMLAttributes & { className?: string; cssModule?: CSSModule; size?: string; -} +} & T; -declare const Pagination: React.StatelessComponent; +declare class Pagination extends React.Component> {} export default Pagination; diff --git a/types/reactstrap/lib/PaginationItem.d.ts b/types/reactstrap/lib/PaginationItem.d.ts index a00fddc413..b555239371 100644 --- a/types/reactstrap/lib/PaginationItem.d.ts +++ b/types/reactstrap/lib/PaginationItem.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface PaginationItemProps extends React.HTMLAttributes { +export type PaginationItemProps = React.HTMLAttributes & { className?: string; cssModule?: CSSModule; active?: boolean; disabled?: boolean; tag?: React.ReactType; -} +} & T; -declare const PaginationItem: React.StatelessComponent; +declare class PaginationItem extends React.Component> {} export default PaginationItem; diff --git a/types/reactstrap/lib/PaginationLink.d.ts b/types/reactstrap/lib/PaginationLink.d.ts index 52fbc6353a..90ea909d4e 100644 --- a/types/reactstrap/lib/PaginationLink.d.ts +++ b/types/reactstrap/lib/PaginationLink.d.ts @@ -1,13 +1,14 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface PaginationLinkProps extends React.HTMLProps { +export type PaginationLinkProps = React.HTMLProps & { 'aria-label'?: string; className?: string; cssModule?: CSSModule; next?: boolean; previous?: boolean; tag?: React.ReactType; -} +} & T; -declare const PaginationLink: React.StatelessComponent; +declare class PaginationLink extends React.Component> {} export default PaginationLink; diff --git a/types/reactstrap/lib/Popover.d.ts b/types/reactstrap/lib/Popover.d.ts index e1ef254ee2..d1a0d56127 100644 --- a/types/reactstrap/lib/Popover.d.ts +++ b/types/reactstrap/lib/Popover.d.ts @@ -2,7 +2,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; import { Popper } from './Popper'; -export interface PopoverProps extends React.HTMLAttributes { +export type PopoverProps = React.HTMLAttributes & { isOpen?: boolean; toggle?: () => void; target: string | HTMLElement; @@ -16,7 +16,7 @@ export interface PopoverProps extends React.HTMLAttributes { delay?: number | {show: number, hide: number}; modifiers?: Popper.Modifiers; cssModule?: CSSModule; -} +} & T; -declare class Popover extends React.Component {} +declare class Popover extends React.Component> {} export default Popover; diff --git a/types/reactstrap/lib/PopoverBody.d.ts b/types/reactstrap/lib/PopoverBody.d.ts index bf67919e49..d5a3d6732f 100644 --- a/types/reactstrap/lib/PopoverBody.d.ts +++ b/types/reactstrap/lib/PopoverBody.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface PopoverBodyProps extends React.HTMLAttributes { +export type PopoverBodyProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const PopoverBody: React.StatelessComponent; +declare class PopoverBody extends React.Component> {} export default PopoverBody; diff --git a/types/reactstrap/lib/PopoverHeader.d.ts b/types/reactstrap/lib/PopoverHeader.d.ts index caa0847233..7033dc90f8 100644 --- a/types/reactstrap/lib/PopoverHeader.d.ts +++ b/types/reactstrap/lib/PopoverHeader.d.ts @@ -1,10 +1,11 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface PopoverHeaderProps extends React.HTMLAttributes { +export type PopoverHeaderProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const PopoverHeader: React.StatelessComponent; +declare class PopoverHeader extends React.Component> {} export default PopoverHeader; diff --git a/types/reactstrap/lib/Progress.d.ts b/types/reactstrap/lib/Progress.d.ts index 6f252622a1..4bd99ab690 100644 --- a/types/reactstrap/lib/Progress.d.ts +++ b/types/reactstrap/lib/Progress.d.ts @@ -1,6 +1,6 @@ import { CSSModule } from '../index'; -export interface ProgressProps extends React.HTMLAttributes { +export type ProgressProps = React.HTMLAttributes & { bar?: boolean; multi?: boolean; tag?: string; @@ -12,7 +12,7 @@ export interface ProgressProps extends React.HTMLAttributes { className?: string; cssModule?: CSSModule; barClassName?: string; -} +} & T; -declare const Progress: React.StatelessComponent; +declare class Progress extends React.Component> {}; export default Progress; diff --git a/types/reactstrap/lib/Row.d.ts b/types/reactstrap/lib/Row.d.ts index 35284a9f70..d430e336e0 100644 --- a/types/reactstrap/lib/Row.d.ts +++ b/types/reactstrap/lib/Row.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface RowProps extends React.HTMLProps { +export type RowProps = React.HTMLProps & { className?: string; cssModule?: CSSModule; tag?: React.ReactType; noGutters?: boolean; -} +} & T; -declare const Row: React.StatelessComponent; +declare class Row extends React.Component> {} export default Row; diff --git a/types/reactstrap/lib/TabContent.d.ts b/types/reactstrap/lib/TabContent.d.ts index 46bf48d079..6597484f9e 100644 --- a/types/reactstrap/lib/TabContent.d.ts +++ b/types/reactstrap/lib/TabContent.d.ts @@ -1,12 +1,12 @@ import * as React from 'react'; import { CSSModule } from '../index'; -export interface TabContentProps extends React.HTMLAttributes { +export type TabContentProps = React.HTMLAttributes & { tag?: React.ReactType; activeTab?: number | string; className?: string; cssModule?: CSSModule; -} +} & T; -declare class TabContent extends React.Component {} +declare class TabContent extends React.Component> {} export default TabContent; diff --git a/types/reactstrap/lib/TabPane.d.ts b/types/reactstrap/lib/TabPane.d.ts index 0bcbfd5d17..1472fe28b7 100644 --- a/types/reactstrap/lib/TabPane.d.ts +++ b/types/reactstrap/lib/TabPane.d.ts @@ -1,11 +1,12 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface TabPaneProps extends React.HTMLAttributes { +export type TabPaneProps = React.HTMLAttributes & { tag?: React.ReactType; className?: string; cssModule?: CSSModule; tabId?: number | string; -} +} & T; -declare const TabPane: React.StatelessComponent; +declare class TabPane extends React.Component> {} export default TabPane; diff --git a/types/reactstrap/lib/Table.d.ts b/types/reactstrap/lib/Table.d.ts index 0374d7a0b5..3ad14b8c0a 100644 --- a/types/reactstrap/lib/Table.d.ts +++ b/types/reactstrap/lib/Table.d.ts @@ -1,6 +1,7 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface TableProps extends React.HTMLAttributes { +export type TableProps = React.HTMLAttributes & { className?: string; cssModule?: CSSModule; size?: string; @@ -12,7 +13,7 @@ export interface TableProps extends React.HTMLAttributes { responsive?: boolean; tag?: React.ReactType; responsiveTag?: React.ReactType; -} +} & T; -declare const Table: React.StatelessComponent; +declare class Table extends React.Component> {} export default Table; diff --git a/types/reactstrap/lib/Tag.d.ts b/types/reactstrap/lib/Tag.d.ts index 49df70b240..ea09231942 100644 --- a/types/reactstrap/lib/Tag.d.ts +++ b/types/reactstrap/lib/Tag.d.ts @@ -1,12 +1,13 @@ +import * as React from 'react'; import { CSSModule } from '../index'; -export interface TagProps extends React.HTMLAttributes { +export type TagProps = React.HTMLAttributes & { color?: string; pill?: boolean; tag?: React.ReactType; className?: string; cssModule?: CSSModule; -} +} & T; -declare const Tag: React.StatelessComponent; +declare class Tag extends React.Component> {} export default Tag; diff --git a/types/reactstrap/lib/Tooltip.d.ts b/types/reactstrap/lib/Tooltip.d.ts index 9c79c8a6d3..5cfcfcab1e 100644 --- a/types/reactstrap/lib/Tooltip.d.ts +++ b/types/reactstrap/lib/Tooltip.d.ts @@ -2,7 +2,7 @@ import * as React from 'react'; import { CSSModule } from '../index'; import {Popper} from './Popper'; -export interface UncontrolledProps extends React.HTMLAttributes { +export type UncontrolledProps = React.HTMLAttributes & { target: string | HTMLElement; container?: string | HTMLElement; delay?: number | {show: number, hide: number}; @@ -12,15 +12,13 @@ export interface UncontrolledProps extends React.HTMLAttributes { placement?: Popper.Placement; modifiers?: Popper.Modifiers; cssModule?: CSSModule; -} -export interface UncontrolledTooltipProps extends UncontrolledProps { - /* intentionally blank */ -} +} & T; +export type UncontrolledTooltipProps = UncontrolledProps; -export interface TooltipProps extends UncontrolledTooltipProps { +export type TooltipProps = UncontrolledTooltipProps & { toggle?: () => void; isOpen?: boolean; -} +}; -declare class Tooltip extends React.Component {} +declare class Tooltip extends React.Component> {} export default Tooltip; diff --git a/types/reactstrap/lib/Uncontrolled.d.ts b/types/reactstrap/lib/Uncontrolled.d.ts index d7aed3962f..f54652710c 100644 --- a/types/reactstrap/lib/Uncontrolled.d.ts +++ b/types/reactstrap/lib/Uncontrolled.d.ts @@ -5,10 +5,10 @@ import { UncontrolledButtonDropdownProps } from './ButtonDropdown'; import { UncontrolledDropdownProps } from './Dropdown'; import { UncontrolledTooltipProps } from './Tooltip'; -export class UncontrolledAlert extends React.Component {} -export class UncontrolledButtonDropdown extends React.Component {} -export class UncontrolledDropdown extends React.Component {} -export class UncontrolledTooltip extends React.Component {} +export class UncontrolledAlert extends React.Component> {} +export class UncontrolledButtonDropdown extends React.Component> {} +export class UncontrolledDropdown extends React.Component> {} +export class UncontrolledTooltip extends React.Component> {} export { UncontrolledAlertProps } from './Alert'; export { UncontrolledButtonDropdownProps } from './ButtonDropdown'; diff --git a/types/reactstrap/reactstrap-tests.tsx b/types/reactstrap/reactstrap-tests.tsx index 959ac2658b..770cb01fa1 100644 --- a/types/reactstrap/reactstrap-tests.tsx +++ b/types/reactstrap/reactstrap-tests.tsx @@ -350,7 +350,7 @@ class Example15 extends React.Component { Action Another Action - { + ) => { // something happens here }}>Another Action