UNPKG

raiden-ts

Version:

Raiden Light Client Typescript/Javascript SDK

33 lines 1.56 kB
/* eslint-disable @typescript-eslint/no-namespace */ import * as t from 'io-ts'; import { ServiceC } from '../services/types'; import { Via } from '../transport/types'; import { createAction, createAsyncAction } from '../utils/actions'; import { Address, Signed } from '../utils/types'; import { Message } from './types'; /** * One-shot send payload.message to meta.address user in transport */ export const messageSend = createAsyncAction(t.type({ address: Address, msgId: t.string }), 'message/send', t.intersection([ t.type({ message: t.union([t.string, Signed(Message)]) }), t.partial({ msgtype: t.string }), Via, ]), t.union([t.undefined, t.type({ via: t.string, tookMs: t.number, retries: t.number })])); /** One-shot send payload.message to a service room in transport */ export const messageServiceSend = createAsyncAction(t.type({ service: ServiceC, msgId: t.string }), 'message/service/send', t.type({ message: Signed(Message) }), t.union([t.undefined, t.type({ via: t.unknown, tookMs: t.number, retries: t.number })])); /** * payload.message was received on payload.ts (timestamp) from meta.address * payload.userId is optional and specific to matrix transport, as sender info */ export const messageReceived = createAction('message/received', t.intersection([ t.type({ text: t.string, ts: t.number, }), t.partial({ message: t.union([Message, Signed(Message)]), userId: t.string, msgtype: t.string, }), ]), t.type({ address: Address })); //# sourceMappingURL=actions.js.map