import * as React from 'react'; import { Ayanami, ActionMethodOfAyanami, ConstructorOf, Omit } from './core'; declare type ConnectedComponent = React.FunctionComponent>; declare type ConnectComponent =

(Component: React.ComponentType

) => ConnectedComponent; export interface ComponentConnectedWithAyanami, S> { (): ConnectComponent, Record>; (mapStateToProps: (state: S) => MS): ConnectComponent>; (mapStateToProps: (state: S) => MS, mapActionsToProps: (actions: ActionMethodOfAyanami) => MA): ConnectComponent; (mapStateToProps: null, mapActionsToProps: (actions: ActionMethodOfAyanami) => MA): ConnectComponent, MA>; } export declare function connectAyanami, S>(AyanamiClass: ConstructorOf): M extends Ayanami ? ComponentConnectedWithAyanami : ComponentConnectedWithAyanami; export {};