Skip to content

Instantly share code, notes, and snippets.

@tomitrescak
Last active May 19, 2016 01:14
Show Gist options
  • Save tomitrescak/a66fe52b790046dfdb95fab2c7ef2df6 to your computer and use it in GitHub Desktop.
Save tomitrescak/a66fe52b790046dfdb95fab2c7ef2df6 to your computer and use it in GitHub Desktop.
Global ambient typings for Meteor development
///////////////////////////////////////////////////////////////
// Node.js //
///////////////////////////////////////////////////////////////
declare var module: any;
declare function require(mod: string): any;
///////////////////////////////////////////////////////////////
// react-router //
///////////////////////////////////////////////////////////////
declare module 'react-router' {
export var browserHistory: any;
}
///////////////////////////////////////////////////////////////
// react-router-redux //
///////////////////////////////////////////////////////////////
declare module 'react-router-redux' {
export function syncHistoryWithStore(history: any, store: any): void;
export var routerReducer: any;
}
///////////////////////////////////////////////////////////////
// react-mounter //
///////////////////////////////////////////////////////////////
declare module 'react-mounter' {
export var mount: any;
export var withOptions: any;
}
///////////////////////////////////////////////////////////////
// mantra //
///////////////////////////////////////////////////////////////
import React = __React;
declare module 'mantra-core' {
interface IKomposer {
(params: Object, onData: Function): Function;
}
interface IKomposerData<T> {
(error?: Object, data?: T): void;
}
interface IInjectDeps {
(...deps: any[]): IInjectDeps;
}
interface IDepsMapper {
(...deps: any[]): void;
}
export var injectDeps: IInjectDeps;
export function useDeps(depsMapper?: IDepsMapper): any;
export function createApp(context: any): any;
export function compose(komposer: IKomposer, loadingComponent?: any, bim?: any, opts?: { pure: Boolean}): any;
export function composeWithTracker(komposer: IKomposer, loadingComponent?: any, bim?: any, opts?: { pure: Boolean}): any;
export function composeWithPromise(): any;
export function composeWithObservable(): any;
export function composeAll<V>(...composeFunctions: Function[]):
(component: any, loadingComponent?: any) => () => React.Component<V, {}>;
}
///////////////////////////////////////////////////////////////
// storybook //
///////////////////////////////////////////////////////////////
declare module '@kadira/storybook' {
export var storiesOf: any;
export var action: any;
}
///////////////////////////////////////////////////////////////
// react-hot-loader //
///////////////////////////////////////////////////////////////
declare module 'react-hot-loader' {
export var AppContainer: any;
}
///////////////////////////////////////////////////////////////
// redbox-react //
///////////////////////////////////////////////////////////////
declare module 'redbox-react' {
let Alert: any;
export default Alert;
}
///////////////////////////////////////////////////////////////
// apollo //
///////////////////////////////////////////////////////////////
declare module 'apollo-client' {
export var Document: any;
export var GraphQLResult: any;
export var SelectionSet: any;
export var GraphQLError: any;
export var ApolloClient: any;
export var createNetworkInterface: any;
export default ApolloClient;
}
declare var gql: any;
declare module 'react-apollo' {
export var ApolloProvider: any;
export var connect: any;
}
declare module 'apollo-client/gql' {
export var registerGqlTag: any;
}
declare module 'graphql-tools' {
export var apolloServer: any;
}
declare module 'express' {
let express: any;
export default express;
}
declare module 'http-proxy-middleware' {
let proxyMiddleware: any;
export default proxyMiddleware;
}
declare module 'redux-thunk' {
let thunk: any;
export default thunk;
}
declare module 'redux-logger' {
let logger: any;
export default logger;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment