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 {};