UNPKG

raiden-ts

Version:

Raiden Light Client Typescript/Javascript SDK

42 lines (41 loc) 2.15 kB
import type { Observable } from 'rxjs'; import type { RaidenAction } from '../../actions'; import type { RaidenState } from '../../state'; import type { RaidenEpicDeps } from '../../types'; import { matrixPresence } from '../actions'; /** * Handles MatrixRequestMonitorPresenceAction and emits a MatrixPresenceUpdateAction * If presence is already known, emits it, else fetch from user profile * Even if the presence stays the same, we emit a MatrixPresenceUpdateAction, as this may be a * request being waited by a promise or something like that * IOW: every request should be followed by a presence update or a failed action, but presence * updates may happen later without new requests (e.g. when the user goes offline) * * @param action$ - Observable of matrixPresence.request actions * @param state$ - Observable of RaidenStates * @param deps - RaidenEpicDeps members * @param deps.matrix$ - MatrixClient async subject * @param deps.log - Logger instance * @param deps.config$ - Config observable * @returns Observable of presence updates or fail action */ export declare function matrixMonitorPresenceEpic(action$: Observable<RaidenAction>, {}: Observable<RaidenState>, deps: RaidenEpicDeps): Observable<matrixPresence.success | matrixPresence.failure>; /** * Channel monitoring triggers matrix presence monitoring for partner * * @param action$ - Observable of RaidenActions * @returns Observable of matrixPresence.request actions */ export declare function matrixMonitorChannelPresenceEpic(action$: Observable<RaidenAction>): Observable<matrixPresence.request>; /** * Update our matrix's avatarUrl on config.caps on startup and changes * * @param action$ - Observable of RaidenActions * @param state$ - Observable of RaidenStates * @param deps - Epics dependencies * @param deps.matrix$ - MatrixClient async subject * @param deps.config$ - Config object * @param deps.init$ - Init$ subject * @returns Observable which never emits */ export declare function matrixUpdateCapsEpic(action$: Observable<RaidenAction>, {}: Observable<RaidenState>, { matrix$, config$, init$ }: RaidenEpicDeps): Observable<never>;