| undefined) => void;
export declare class Component extends React.PureComponent
{
constructor(props: P & Dispatcher);
dispatch(action: A, eventToStop?: React.SyntheticEvent | Event): void;
}
export declare enum ActionType {
Init = "ReactiveElm/Init",
}
export declare type InitType = ActionType;
export declare const InitType: ActionType;
export interface Init {
type: "ReactiveElm/Init";
}
export declare const init: {
type: string;
};
export declare type Goto = Router.Action;
export declare type GotoType = Router.ActionType;
export declare const GotoType: Router.ActionType;
export declare const goto: (route: Route, opts?: Router.GotoOpts) => Router.Goto;
export declare type Update = (state: S, action: A, dispatch: Dispatch) => S;
export declare type WrappedUpdate = (state: S, action: A) => S;
export interface Opts {
baseUri?: string;
rootHTMLElement?: Element | null;
remoteDevTools?: {
name: string;
hostname: string;
port: number;
};
onLoad: () => any;
}
export declare const load: , Action extends Redux.Action, Route>(initialState: State, reactsTo: (action: Redux.Action) => action is Action, update: Update, RootJSXElement: (new (state: State & Dispatcher) => Component) | ((state: State) => React.ReactElement), routeToUri: Router.RouteToUri, uriToRoute: Router.UriToRoute, module: NodeModule, opts?: Opts) => void;
export interface HotModule extends NodeModule {
hot: {
accept: (file?: string, cb?: () => void) => void;
dispose: (callback: () => void) => void;
} | null;
}
export declare const withDispatch: (f: Update) => WrappedUpdate;
export declare const exists: (it: any) => boolean;
export declare function log(value: T, ...others: any[]): T;
export declare type Mutable = {
[P in K]: T[P];
};