aboutsummaryrefslogtreecommitdiffstats
path: root/packages/typescript-typings/types/react-joyride/index.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/typescript-typings/types/react-joyride/index.d.ts')
-rw-r--r--packages/typescript-typings/types/react-joyride/index.d.ts86
1 files changed, 86 insertions, 0 deletions
diff --git a/packages/typescript-typings/types/react-joyride/index.d.ts b/packages/typescript-typings/types/react-joyride/index.d.ts
new file mode 100644
index 000000000..f126e4c86
--- /dev/null
+++ b/packages/typescript-typings/types/react-joyride/index.d.ts
@@ -0,0 +1,86 @@
+// Type definitions for react-joyride 2.0.0-11
+// Project: https://github.com/gilbarbara/react-joyride
+
+declare module 'react-joyride' {
+ import * as React from 'react';
+ export interface StyleOptions {
+ arrowColor?: string;
+ backgroundColor?: string;
+ primaryColor?: string;
+ textColor?: string;
+ overlayColor?: string;
+ spotlightShadow?: string;
+ beaconSize?: number;
+ zIndex?: number;
+ }
+
+ export type Placement =
+ | 'top'
+ | 'top-left'
+ | 'top-right'
+ | 'bottom'
+ | 'bottom-left'
+ | 'bottom-right'
+ | 'right'
+ | 'left';
+
+ export interface Step {
+ title?: string;
+ content: React.ReactNode;
+ target: string;
+ placement?: Placement;
+ type?: 'click' | 'hover';
+ isFixed?: boolean;
+ allowClicksThruHole?: boolean;
+ disableBeacon?: boolean;
+ style?: StyleOptions;
+ [prop: string]: any;
+ }
+
+ export interface StyleOptionsProp {
+ options: StyleOptions;
+ }
+
+ interface CallbackMetadata {
+ type:
+ | 'tour:start'
+ | 'step:before'
+ | 'beacon'
+ | 'tooltip'
+ | 'close'
+ | 'step:after'
+ | 'tour:end'
+ | 'tour:status'
+ | 'error:target_not_found'
+ | 'error';
+ step: number;
+ }
+
+ export type CallbackData = CallbackMetadata & State;
+
+ export interface Props {
+ steps?: Step[];
+ beaconComponent?: React.ReactNode;
+ disableOverlayClose?: boolean;
+ run?: boolean;
+ stepIndex?: number;
+ callback?: (data: CallbackData) => void;
+ debug?: boolean;
+ styles?: StyleOptionsProp;
+ }
+
+ export interface State {
+ action: string;
+ controlled: boolean;
+ index: number;
+ lifecycle: string;
+ size: 0;
+ status: string;
+ }
+
+ export default class Joyride extends React.Component<Props, State> {
+ constructor(props: Props);
+
+ static defaultProps: Props;
+ }
+}