1import * as React from 'react'
2import * as PropProviders from './prop-providers'
3import {TypedState} from '../reducers'
4import {RouteProps} from '../route-tree/render-route'
5
6export type SelectorMap = {[K in string]: (arg0: any) => any | Object}
7
8export class Story {
9  addDecorator: (d: (s: () => React.ReactNode) => React.ReactNode) => Story
10  add: (name: string, f: () => React.ReactNode) => Story
11}
12
13export declare function storiesOf(name: string, module: any): Story
14export declare function action(name: string): any
15export declare function perfDecorator(copiesToRender?: number): () => React.ReactNode
16export declare function scrollViewDecorator(): Function
17export declare function createNavigator<T>(props: T): RouteProps<T>
18export declare function createStoreWithCommon(): TypedState
19export declare function createPropProvider(
20  ...maps: SelectorMap[]
21): (arg0: () => React.ReactNode) => React.ReactNode
22export declare function createPropProviderWithCommon(
23  ...maps: SelectorMap[]
24): (arg0: () => React.ReactNode) => React.ReactNode
25export declare function updateStoreDecorator(
26  store: TypedState,
27  update: (draftState: TypedState) => void
28): (story: any) => React.ReactNode
29export declare function unexpected(name: string): () => void
30export declare class Rnd {
31  constructor(seed: number | string)
32  next(): number
33  randInt(low: number, high: number): number
34  generateString(regex: RegExp): string
35}
36
37export declare function propOverridesForStory(p: any): {}
38export declare class MockStore extends React.Component<{store: any; children: React.ReactNode}> {}
39export {PropProviders}
40