apollo-mantra
Version:
Tools for integration of apollo with Mantra
51 lines (50 loc) • 2.15 kB
TypeScript
/// <reference types="react" />
import * as React from 'react';
import './polyfills';
declare global {
interface ObjectConstructor {
assign(el: any, ...els: any[]): any;
}
}
export declare function createApp(options?: {
contextTypes?: any;
loadingComponent?: any;
apolloClient: any;
store?: any;
state?: any;
}): void;
export { connect, provide } from './mobx';
export { default as mutate } from './mutate';
export { default as query, IQuery } from './query';
export { default as watchQuery } from './watch_query';
export { loadingContainer } from './loading_container';
export { default as waitForData } from './wait_for_data';
export { isQuery, getQuery, isMutation, getMutation, copyQuery } from './reducer_extensions';
export { queriesFinished } from './helpers';
export declare type IReactComponent<P> = React.StatelessComponent<P> | React.ComponentClass<P>;
export declare type IWrappedComponent<P> = {
wrappedComponent: IReactComponent<P>;
wrappedInstance: React.ReactElement<P> | void;
};
export declare function ioc<P>(component: IReactComponent<P>): React.ClassicComponentClass<P> & {
wrappedComponent: React.StatelessComponent<{}> | React.ComponentClass<{}>;
wrappedInstance: void | React.ReactElement<{}>;
};
export declare function iocs<P>(component: IReactComponent<P>): React.ClassicComponentClass<P> & {
wrappedComponent: React.StatelessComponent<{}> | React.ComponentClass<{}>;
wrappedInstance: void | React.ReactElement<{}>;
};
export declare function ic<P>(component: IReactComponent<P>): (React.StatelessComponent<P> & {
wrappedComponent: IReactComponent<P>;
wrappedInstance: void | React.ReactElement<P>;
}) | (React.ComponentClass<P> & {
wrappedComponent: IReactComponent<P>;
wrappedInstance: void | React.ReactElement<P>;
});
export declare function ics<P>(component: IReactComponent<P>): (React.StatelessComponent<P> & {
wrappedComponent: IReactComponent<P>;
wrappedInstance: void | React.ReactElement<P>;
}) | (React.ComponentClass<P> & {
wrappedComponent: IReactComponent<P>;
wrappedInstance: void | React.ReactElement<P>;
});