import type { Observable } from 'rxjs'; import type { RaidenState } from '../../state'; import type { matrixPresence } from '../../transport/actions'; import type { Latest, RaidenEpicDeps } from '../../types'; import { Signed } from '../../utils/types'; import { iouClear, iouPersist, pathFind } from '../actions'; import type { Paths } from '../types'; import { IOU, PfsError } from '../types'; declare type RouteResult = { iou: Signed | undefined; } & ({ paths: Paths; } | { error: PfsError; }); /** * Returns a ISO string with millisecond resolution (same as PC) * * @param time - Date instance * @returns string representing time in the format expected by PFS */ export declare function makeTimestamp(time?: Date): string; /** * @param action - pfs request action * @param deps - Epics dependencies * @param latest - Latest object * @param latest.state - Latest state * @param latest.config - Latest config * @param targetPresence - Current presence of target * @returns Observable containing paths, new iou or error */ export declare function getRoute$(action: pathFind.request, deps: RaidenEpicDeps, { state, config }: Pick, targetPresence: matrixPresence.success): Observable; /** * @param opts - validation options * @param opts."0" - pfs request action * @param opts."1" - Received route to validate * @param state - Latest RaidenState * @param deps - Epics dependencies * @returns Observable of results actions after route is validated */ export declare function validateRoute$([action, route]: readonly [action: pathFind.request, route: RouteResult], state: RaidenState, deps: RaidenEpicDeps): Observable; export {};