interface.ts 978 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /**
  2. * 连接状态
  3. */
  4. export enum ConnectionState {
  5. Unconnected, // 未连接
  6. Connecting, // 连接中
  7. Connected, // 已连接
  8. }
  9. /**
  10. * 发送数据
  11. */
  12. export interface SendMessage<T = unknown> {
  13. data: {
  14. rspCode?: number; // 回调码
  15. payload: T // 待发送报文
  16. };
  17. success?: (res: T) => void; // 成功回调
  18. fail?: (err: string) => void; // 失败回调
  19. }
  20. /**
  21. * 信息发送异步任务类
  22. */
  23. export interface AsyncTask<T> {
  24. /** 5.0报文直接为流水号;4.0报文为流水号+"_"+大类号(由于服务端行情推送会使用流水号自增) */
  25. key?: string;
  26. /** 向服务器发送的数据 */
  27. sendMessage: SendMessage<T>;
  28. /** 超时计时器 */
  29. timeoutId: number;
  30. }
  31. /**
  32. * 参考https://typescript.bootcss.com/generics.html#在泛型里使用类类型
  33. */
  34. export type Package<T> = new (contentOrNumber: number | Uint8Array, content?: Uint8Array) => T;