import { combineReducers, AnyAction } from 'redux'
import { RootState as ApiState } from '@lml/cosmo-redux-api'
import {
    PUSHER_METADATA_REDUCER_KEY,
    PusherMetadataState,
    pusherMetadataReducer,
} from './metadata'

export * from './metadata'

export const PUSHER_REDUCER_KEY = '@@pusher'

export interface PusherState {
    metadata: PusherMetadataState
}

export interface RootState extends ApiState {
    '@@pusher': PusherState
}

export const pusherReducers = combineReducers({
    [PUSHER_METADATA_REDUCER_KEY]: pusherMetadataReducer,
})
