import * as React from 'react'; import Query from 'bicycle/types/Query'; import { BaseRootQuery } from 'bicycle/typed-helpers/query'; import ErrorResult from 'bicycle/types/ErrorResult'; import Component from '../component-class'; export declare type GetQuery = (props: Props) => BaseRootQuery | Query; export declare type GetEventHandlers = (client: any, props: Props) => EventHandlers; export interface Options { renderLoading?: boolean | Component; renderErrors?: boolean | Component; } export interface ConnectResultProps { result: QueryResult; loaded: boolean; errors: ReadonlyArray; errorDetails: ReadonlyArray; previousElement: React.ReactNode; } export declare type ConnectProps = ConnectResultProps & EventHandlers; declare function connect(WrappedComponent: Component>, getQuery: GetQuery, getEventHandlers?: void, options?: Options>): React.ComponentClass; declare function connect(WrappedComponent: Component, getQuery: void, getEventHandlers: GetEventHandlers, options?: Options): React.ComponentClass; declare function connect(WrappedComponent: Component>, getQuery: GetQuery, getEventHandlers: GetEventHandlers, options?: Options>): React.ComponentClass; export default connect;