Skip to content

Commit

Permalink
Merge pull request #39 from jbdemonte/master
Browse files Browse the repository at this point in the history
Append typescript definition file
  • Loading branch information
yjose authored Sep 29, 2018
2 parents cfcdb08 + 05565ba commit 1f1b045
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 0 deletions.
5 changes: 5 additions & 0 deletions build.js
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,11 @@ const writePackageFiles = () => {
fs.readFileSync(".npmignore", "utf-8"),
"utf-8"
);
fs.writeFileSync(
"./lib/index.d.ts",
fs.readFileSync("src/index.d.ts", "utf-8"),
"utf-8"
);
};

// and use babel config V7
Expand Down
34 changes: 34 additions & 0 deletions lib/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
declare module 'reactjs-popup' {
import * as React from 'react';

type EventType = 'hover' | 'click' | 'focus';
type Position = 'top left' | 'top right' | 'bottom right' | 'bottom left' | 'right center' | 'left center' | 'top center' | 'bottom center';

interface Props {
trigger: JSX.Element | ((isOpen: boolean) => JSX.Element);
open?: boolean;
defaultOpen?: boolean;
on?: EventType | EventType[];
children: JSX.Element | ((close: () => void, isOpen: boolean) => JSX.Element);
position?: Position | Position[];
offsetX?: number;
offsetY?: number;
arrow?: boolean;
modal?: boolean;
lockScroll?: boolean;
closeOnDocumentClick?: boolean;
closeOnEscape?: boolean;
mouseEnterDelay?: number;
mouseLeaveDelay?: number;
onOpen?: () => any;
onClose?: () => any;
contentStyle?: object;
overlayStyle?: object;
arrowStyle?: object;
keepTooltipInside?: boolean | string;
}

class Popup extends React.Component<Props> {}

export = Popup;
}
34 changes: 34 additions & 0 deletions src/index.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
declare module 'reactjs-popup' {
import * as React from 'react';

type EventType = 'hover' | 'click' | 'focus';
type Position = 'top left' | 'top right' | 'bottom right' | 'bottom left' | 'right center' | 'left center' | 'top center' | 'bottom center';

interface Props {
trigger: JSX.Element | ((isOpen: boolean) => JSX.Element);
open?: boolean;
defaultOpen?: boolean;
on?: EventType | EventType[];
children: JSX.Element | ((close: () => void, isOpen: boolean) => JSX.Element);
position?: Position | Position[];
offsetX?: number;
offsetY?: number;
arrow?: boolean;
modal?: boolean;
lockScroll?: boolean;
closeOnDocumentClick?: boolean;
closeOnEscape?: boolean;
mouseEnterDelay?: number;
mouseLeaveDelay?: number;
onOpen?: () => any;
onClose?: () => any;
contentStyle?: object;
overlayStyle?: object;
arrowStyle?: object;
keepTooltipInside?: boolean | string;
}

class Popup extends React.Component<Props> {}

export = Popup;
}

0 comments on commit 1f1b045

Please sign in to comment.