import { Observable } from 'rxjs';
import { ActionsObservable } from 'redux-observable';
import { Store } from 'redux';
import { RootState } from '../reducers';
import { Pusher as PusherInterface } from 'pusher-js';
import { PusherConnectAction, PusherSubscribeChannelAction } from '../actions';
export declare let pusherClient: PusherInterface;
export declare const connectToPusher: (action$: ActionsObservable<PusherConnectAction>, store: Store<RootState>) => Observable<any>;
/**
 * An epic to subscribe to a channel
 *
 * @param action$
 * @param store
 */
export declare const subscribeToChannel: (action$: ActionsObservable<PusherSubscribeChannelAction>, store: Store<RootState>) => Observable<{}>;
