@lazycatcloud/sdk 0.1.150 → 0.1.152

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. package/package.json +1 -1
  2. package/dist/common/box.d.ts +0 -147
  3. package/dist/common/box.d.ts.map +0 -1
  4. package/dist/common/box.js +0 -430
  5. package/dist/common/box.js.map +0 -1
  6. package/dist/common/browseronly.d.ts +0 -131
  7. package/dist/common/browseronly.d.ts.map +0 -1
  8. package/dist/common/browseronly.js +0 -397
  9. package/dist/common/browseronly.js.map +0 -1
  10. package/dist/common/end_device.d.ts +0 -215
  11. package/dist/common/end_device.d.ts.map +0 -1
  12. package/dist/common/end_device.js +0 -489
  13. package/dist/common/end_device.js.map +0 -1
  14. package/dist/common/file_handler.d.ts +0 -158
  15. package/dist/common/file_handler.d.ts.map +0 -1
  16. package/dist/common/file_handler.js +0 -371
  17. package/dist/common/file_handler.js.map +0 -1
  18. package/dist/common/filetrans.d.ts +0 -870
  19. package/dist/common/filetrans.d.ts.map +0 -1
  20. package/dist/common/filetrans.js +0 -1459
  21. package/dist/common/filetrans.js.map +0 -1
  22. package/dist/common/gateway.d.ts +0 -203
  23. package/dist/common/gateway.d.ts.map +0 -1
  24. package/dist/common/gateway.js +0 -522
  25. package/dist/common/gateway.js.map +0 -1
  26. package/dist/common/message.d.ts +0 -56
  27. package/dist/common/message.d.ts.map +0 -1
  28. package/dist/common/message.js +0 -215
  29. package/dist/common/message.js.map +0 -1
  30. package/dist/common/peripheral_device.d.ts +0 -266
  31. package/dist/common/peripheral_device.d.ts.map +0 -1
  32. package/dist/common/peripheral_device.js +0 -608
  33. package/dist/common/peripheral_device.js.map +0 -1
  34. package/dist/common/security_context.d.ts +0 -202
  35. package/dist/common/security_context.d.ts.map +0 -1
  36. package/dist/common/security_context.js +0 -598
  37. package/dist/common/security_context.js.map +0 -1
  38. package/dist/common/users.d.ts +0 -254
  39. package/dist/common/users.d.ts.map +0 -1
  40. package/dist/common/users.js +0 -821
  41. package/dist/common/users.js.map +0 -1
  42. package/dist/dlna/dlna.d.ts +0 -243
  43. package/dist/dlna/dlna.d.ts.map +0 -1
  44. package/dist/dlna/dlna.js +0 -732
  45. package/dist/dlna/dlna.js.map +0 -1
  46. package/dist/extentions/app_common.d.ts +0 -8
  47. package/dist/extentions/app_common.d.ts.map +0 -1
  48. package/dist/extentions/app_common.js +0 -31
  49. package/dist/extentions/app_common.js.map +0 -1
  50. package/dist/extentions/safe_app.d.ts +0 -15
  51. package/dist/extentions/safe_app.d.ts.map +0 -1
  52. package/dist/extentions/safe_app.js +0 -52
  53. package/dist/extentions/safe_app.js.map +0 -1
  54. package/dist/extentions/unsafe_app.d.ts +0 -18
  55. package/dist/extentions/unsafe_app.d.ts.map +0 -1
  56. package/dist/extentions/unsafe_app.js +0 -92
  57. package/dist/extentions/unsafe_app.js.map +0 -1
  58. package/dist/google/protobuf/descriptor.d.ts +0 -51463
  59. package/dist/google/protobuf/descriptor.d.ts.map +0 -1
  60. package/dist/google/protobuf/descriptor.js +0 -2893
  61. package/dist/google/protobuf/descriptor.js.map +0 -1
  62. package/dist/google/protobuf/empty.d.ts +0 -20
  63. package/dist/google/protobuf/empty.d.ts.map +0 -1
  64. package/dist/google/protobuf/empty.js +0 -42
  65. package/dist/google/protobuf/empty.js.map +0 -1
  66. package/dist/google/protobuf/timestamp.d.ts +0 -121
  67. package/dist/google/protobuf/timestamp.d.ts.map +0 -1
  68. package/dist/google/protobuf/timestamp.js +0 -91
  69. package/dist/google/protobuf/timestamp.js.map +0 -1
  70. package/dist/grpcweb.d.ts +0 -21
  71. package/dist/grpcweb.d.ts.map +0 -1
  72. package/dist/grpcweb.js +0 -71
  73. package/dist/grpcweb.js.map +0 -1
  74. package/dist/index.d.ts +0 -61
  75. package/dist/index.d.ts.map +0 -1
  76. package/dist/index.js +0 -132
  77. package/dist/index.js.map +0 -1
  78. package/dist/lanforward/lanforward.d.ts +0 -86
  79. package/dist/lanforward/lanforward.d.ts.map +0 -1
  80. package/dist/lanforward/lanforward.js +0 -217
  81. package/dist/lanforward/lanforward.js.map +0 -1
  82. package/dist/localdevice/clipboard.d.ts +0 -114
  83. package/dist/localdevice/clipboard.d.ts.map +0 -1
  84. package/dist/localdevice/clipboard.js +0 -387
  85. package/dist/localdevice/clipboard.js.map +0 -1
  86. package/dist/localdevice/config.d.ts +0 -78
  87. package/dist/localdevice/config.d.ts.map +0 -1
  88. package/dist/localdevice/config.js +0 -187
  89. package/dist/localdevice/config.js.map +0 -1
  90. package/dist/localdevice/device.d.ts +0 -68
  91. package/dist/localdevice/device.d.ts.map +0 -1
  92. package/dist/localdevice/device.js +0 -155
  93. package/dist/localdevice/device.js.map +0 -1
  94. package/dist/localdevice/dialog.d.ts +0 -188
  95. package/dist/localdevice/dialog.d.ts.map +0 -1
  96. package/dist/localdevice/dialog.js +0 -555
  97. package/dist/localdevice/dialog.js.map +0 -1
  98. package/dist/localdevice/local-launch.d.ts +0 -195
  99. package/dist/localdevice/local-launch.d.ts.map +0 -1
  100. package/dist/localdevice/local-launch.js +0 -574
  101. package/dist/localdevice/local-launch.js.map +0 -1
  102. package/dist/localdevice/network.d.ts +0 -76
  103. package/dist/localdevice/network.d.ts.map +0 -1
  104. package/dist/localdevice/network.js +0 -212
  105. package/dist/localdevice/network.js.map +0 -1
  106. package/dist/localdevice/permission.d.ts +0 -98
  107. package/dist/localdevice/permission.d.ts.map +0 -1
  108. package/dist/localdevice/permission.js +0 -258
  109. package/dist/localdevice/permission.js.map +0 -1
  110. package/dist/localdevice/photo.d.ts +0 -410
  111. package/dist/localdevice/photo.d.ts.map +0 -1
  112. package/dist/localdevice/photo.js +0 -1235
  113. package/dist/localdevice/photo.js.map +0 -1
  114. package/dist/package.json +0 -24
  115. package/dist/ssdp/ssdp.d.ts +0 -94
  116. package/dist/ssdp/ssdp.d.ts.map +0 -1
  117. package/dist/ssdp/ssdp.js +0 -246
  118. package/dist/ssdp/ssdp.js.map +0 -1
  119. package/dist/sys/OS_daemon.d.ts +0 -93
  120. package/dist/sys/OS_daemon.d.ts.map +0 -1
  121. package/dist/sys/OS_daemon.js +0 -240
  122. package/dist/sys/OS_daemon.js.map +0 -1
  123. package/dist/sys/OS_snapshot.d.ts +0 -437
  124. package/dist/sys/OS_snapshot.d.ts.map +0 -1
  125. package/dist/sys/OS_snapshot.js +0 -1331
  126. package/dist/sys/OS_snapshot.js.map +0 -1
  127. package/dist/sys/OS_upgrader.d.ts +0 -183
  128. package/dist/sys/OS_upgrader.d.ts.map +0 -1
  129. package/dist/sys/OS_upgrader.js +0 -606
  130. package/dist/sys/OS_upgrader.js.map +0 -1
  131. package/dist/sys/event.d.ts +0 -219
  132. package/dist/sys/event.d.ts.map +0 -1
  133. package/dist/sys/event.js +0 -619
  134. package/dist/sys/event.js.map +0 -1
  135. package/dist/sys/hc-core/hc-core.d.ts +0 -477
  136. package/dist/sys/hc-core/hc-core.d.ts.map +0 -1
  137. package/dist/sys/hc-core/hc-core.js +0 -1294
  138. package/dist/sys/hc-core/hc-core.js.map +0 -1
  139. package/dist/sys/ingress.d.ts +0 -265
  140. package/dist/sys/ingress.d.ts.map +0 -1
  141. package/dist/sys/ingress.js +0 -851
  142. package/dist/sys/ingress.js.map +0 -1
  143. package/dist/sys/network_manager.d.ts +0 -303
  144. package/dist/sys/network_manager.d.ts.map +0 -1
  145. package/dist/sys/network_manager.js +0 -712
  146. package/dist/sys/network_manager.js.map +0 -1
  147. package/dist/sys/package_manager.d.ts +0 -599
  148. package/dist/sys/package_manager.d.ts.map +0 -1
  149. package/dist/sys/package_manager.js +0 -1508
  150. package/dist/sys/package_manager.js.map +0 -1
  151. package/dist/sys/portal-server/portal-server.d.ts +0 -783
  152. package/dist/sys/portal-server/portal-server.d.ts.map +0 -1
  153. package/dist/sys/portal-server/portal-server.js +0 -2364
  154. package/dist/sys/portal-server/portal-server.js.map +0 -1
  155. package/dist/sys/snapd.d.ts +0 -256
  156. package/dist/sys/snapd.d.ts.map +0 -1
  157. package/dist/sys/snapd.js +0 -680
  158. package/dist/sys/snapd.js.map +0 -1
@@ -1,783 +0,0 @@
1
- import { grpc } from "@improbable-eng/grpc-web";
2
- import _m0 from "protobufjs/minimal";
3
- import { Observable } from "rxjs";
4
- import { Empty } from "../../google/protobuf/empty";
5
- export declare enum Role {
6
- NORMAL = 0,
7
- ADMIN = 1,
8
- UNRECOGNIZED = -1
9
- }
10
- export declare function roleFromJSON(object: any): Role;
11
- export declare function roleToJSON(object: Role): string;
12
- export interface GenUserInvitationRequest {
13
- /** 仅限注册此uid */
14
- limitUid?: string | undefined;
15
- /** 在此时间前有效 */
16
- notAfter?: Date | undefined;
17
- /** 此邀请最多使用多少次 */
18
- limitUsageCount?: number | undefined;
19
- /** 自动设置role为此字段,默认为NORMAL */
20
- limitRole?: Role | undefined;
21
- /** 是否允许新用户安装应用 */
22
- allowInstallApp?: boolean | undefined;
23
- /** 是否启用应用白名单 */
24
- enableAllowList?: boolean | undefined;
25
- /** 对新用户可见的应用列表(appid) */
26
- appAllowList: string[];
27
- }
28
- export interface UserInvitation {
29
- token: string;
30
- }
31
- export interface ListUsersReply {
32
- uids: string[];
33
- }
34
- export interface PairDevicesRequest {
35
- srcId: string;
36
- otherIds: string[];
37
- }
38
- export interface AllocVEIPRequest {
39
- /** 简短说明使用原因,方便后续管理 */
40
- usage: string;
41
- /**
42
- * 关联的子域名。hserver会自动将$subdomain.$boxdomain的AAAA/A记录关联到对应的IP上
43
- * 1. 外部系统需要自行确保subdomain不会冲突
44
- */
45
- subdomain: string;
46
- }
47
- export interface AllocVEIPReply {
48
- ip: string;
49
- }
50
- export interface FreeVEIPRequest {
51
- ip: string;
52
- /**
53
- * 释放VEIP时为了避免DNS cache的问题,会在删除对应DNS record后等待一定时间后再真实的释放对应VEIP
54
- * 不指定则默认为10分钟
55
- */
56
- waitSecond: number;
57
- }
58
- export interface FreeVEIPReply {
59
- }
60
- export interface AppCertRequest {
61
- appid: string;
62
- /** 单实例则为空,多实例为APP所部署时的UID */
63
- uid: string;
64
- /** 证书有效时间,单位s */
65
- validSeconds: number;
66
- }
67
- export interface AppCertReply {
68
- /** PEM格式的APP证书 */
69
- cert: string;
70
- /** PEM格式的APP私钥 */
71
- privateKey: string;
72
- /**
73
- * 盒子证书,同一盒子内所有app的box_cert都是相同的,
74
- * 可以作为CA证书的角色来使用
75
- */
76
- boxCert: string;
77
- }
78
- export interface AuthToken {
79
- /** 登陆时服务器返回的token */
80
- token: string;
81
- /**
82
- * 若设置了此地址,则在未检测到auth-token时,
83
- * 可以使用返回信息中的autologin_token_request_url进行自动查找auth-token
84
- * 此地址一般时ingress等组件上提供的服务。
85
- * 会通过html post form形式调用,附带token和redirect两个字段
86
- * token为自动搜索到的token,redirect为AuthToken.autologin_redirect_url的值。
87
- * 若token为空表示自动搜索token失败。
88
- */
89
- autologinTokenPostUrl: string;
90
- /**
91
- * 若token_type = HTTPBasicAuth或使用autologin机制,
92
- * 则必须包含此字段,以便hportal可以分析出正确的登陆设备
93
- */
94
- accessIp: string;
95
- autologinRedirectUrl: string;
96
- tokenType: AuthToken_TokenType;
97
- }
98
- export declare enum AuthToken_TokenType {
99
- /** Raw - token return by hportal-server login method */
100
- Raw = 0,
101
- /** HTTPBasicAuth - QWxhZGRpbjpvcGVuIHNlc2FtZQ== */
102
- HTTPBasicAuth = 1,
103
- UNRECOGNIZED = -1
104
- }
105
- export declare function authToken_TokenTypeFromJSON(object: any): AuthToken_TokenType;
106
- export declare function authToken_TokenTypeToJSON(object: AuthToken_TokenType): string;
107
- export interface LoginInfo {
108
- uid: string;
109
- deviceId: string;
110
- when: Date | undefined;
111
- /**
112
- * 若uid为空, ingress应该返回此html内容给浏览器进行自动登陆。
113
- * 此html片段会尝试与hclient通讯获取auth-token后post到AuthToken.autologin_token_post_url上
114
- */
115
- autologinTokenRequestContent: string;
116
- /** 当前登陆设备的版本信息 */
117
- deviceVersion: string;
118
- }
119
- export interface DeviceID {
120
- id: string;
121
- }
122
- export interface BoxInfo {
123
- /** 中心化服务器地址, 默认为origin.lazycat.cloud */
124
- originServer: string;
125
- /** fc03:1136:38/40地址 */
126
- virtualIp: string;
127
- /** p2p节点id */
128
- boxId: string;
129
- /** 注册到origin-server内的名称 */
130
- boxName: string;
131
- /** 从origin-server获取到的域名 */
132
- boxDomain: string;
133
- /** 证书管理器已经就续 */
134
- certReady: boolean;
135
- /** PEM格式的盒子证书, 作为盒子系统其他app cert的CA证书。 */
136
- boxCert: string;
137
- }
138
- export interface DomainCertRequest {
139
- domain: string;
140
- }
141
- export interface DomainCertReply {
142
- cert: string;
143
- key: string;
144
- ocsp: Uint8Array;
145
- }
146
- export interface Device {
147
- udid: string;
148
- /** TODO 待删除 */
149
- peerId: string;
150
- isOnline: boolean;
151
- /** 因为device api的监听端口可能会变化,所以此url有效性不会太长 */
152
- deviceApiUrl: string;
153
- /** 设备名称 */
154
- name: string;
155
- /** 设备型号 */
156
- model: string;
157
- /** 设备绑定时间 */
158
- bindingTime: Date | undefined;
159
- /** 设备是否是移动平台 */
160
- isMobile: boolean;
161
- }
162
- export interface ListDeviceRequest {
163
- uid: string;
164
- }
165
- export interface ListDeviceReply {
166
- devices: Device[];
167
- }
168
- export interface UserID {
169
- uid: string;
170
- }
171
- export interface ChangeRoleReqeust {
172
- uid: string;
173
- role: Role;
174
- }
175
- export interface QueryRoleReply {
176
- uid: string;
177
- role: Role;
178
- }
179
- export interface ResetPasswordRequest {
180
- uid: string;
181
- oldPassword: string;
182
- newPassword: string;
183
- }
184
- export interface DeleteUserRequest {
185
- uid: string;
186
- }
187
- export interface CreateUserRequest {
188
- uid: string;
189
- password: string;
190
- role: Role;
191
- }
192
- export interface ForceResetPasswordRequest {
193
- uid: string;
194
- newPassword: string;
195
- }
196
- export interface LogoutRequest {
197
- uid: string;
198
- /** 设备唯一id */
199
- udid: string;
200
- /** 注销原因 */
201
- reason: LogoutRequest_Reason;
202
- }
203
- export declare enum LogoutRequest_Reason {
204
- LogoutByDeleting = 0,
205
- LogoutByUser = 1,
206
- UNRECOGNIZED = -1
207
- }
208
- export declare function logoutRequest_ReasonFromJSON(object: any): LogoutRequest_Reason;
209
- export declare function logoutRequest_ReasonToJSON(object: LogoutRequest_Reason): string;
210
- export interface CheckPasswordRequest {
211
- uid: string;
212
- password: string;
213
- }
214
- export declare const GenUserInvitationRequest: {
215
- encode(message: GenUserInvitationRequest, writer?: _m0.Writer): _m0.Writer;
216
- decode(input: _m0.Reader | Uint8Array, length?: number): GenUserInvitationRequest;
217
- fromJSON(object: any): GenUserInvitationRequest;
218
- toJSON(message: GenUserInvitationRequest): unknown;
219
- fromPartial<I extends {
220
- limitUid?: string | undefined;
221
- notAfter?: Date | undefined;
222
- limitUsageCount?: number | undefined;
223
- limitRole?: Role | undefined;
224
- allowInstallApp?: boolean | undefined;
225
- enableAllowList?: boolean | undefined;
226
- appAllowList?: string[];
227
- } & {
228
- limitUid?: string | undefined;
229
- notAfter?: Date | undefined;
230
- limitUsageCount?: number | undefined;
231
- limitRole?: Role | undefined;
232
- allowInstallApp?: boolean | undefined;
233
- enableAllowList?: boolean | undefined;
234
- appAllowList?: string[] & string[] & { [K in Exclude<keyof I["appAllowList"], keyof string[]>]: never; };
235
- } & { [K_1 in Exclude<keyof I, keyof GenUserInvitationRequest>]: never; }>(object: I): GenUserInvitationRequest;
236
- };
237
- export declare const UserInvitation: {
238
- encode(message: UserInvitation, writer?: _m0.Writer): _m0.Writer;
239
- decode(input: _m0.Reader | Uint8Array, length?: number): UserInvitation;
240
- fromJSON(object: any): UserInvitation;
241
- toJSON(message: UserInvitation): unknown;
242
- fromPartial<I extends {
243
- token?: string;
244
- } & {
245
- token?: string;
246
- } & { [K in Exclude<keyof I, "token">]: never; }>(object: I): UserInvitation;
247
- };
248
- export declare const ListUsersReply: {
249
- encode(message: ListUsersReply, writer?: _m0.Writer): _m0.Writer;
250
- decode(input: _m0.Reader | Uint8Array, length?: number): ListUsersReply;
251
- fromJSON(object: any): ListUsersReply;
252
- toJSON(message: ListUsersReply): unknown;
253
- fromPartial<I extends {
254
- uids?: string[];
255
- } & {
256
- uids?: string[] & string[] & { [K in Exclude<keyof I["uids"], keyof string[]>]: never; };
257
- } & { [K_1 in Exclude<keyof I, "uids">]: never; }>(object: I): ListUsersReply;
258
- };
259
- export declare const PairDevicesRequest: {
260
- encode(message: PairDevicesRequest, writer?: _m0.Writer): _m0.Writer;
261
- decode(input: _m0.Reader | Uint8Array, length?: number): PairDevicesRequest;
262
- fromJSON(object: any): PairDevicesRequest;
263
- toJSON(message: PairDevicesRequest): unknown;
264
- fromPartial<I extends {
265
- srcId?: string;
266
- otherIds?: string[];
267
- } & {
268
- srcId?: string;
269
- otherIds?: string[] & string[] & { [K in Exclude<keyof I["otherIds"], keyof string[]>]: never; };
270
- } & { [K_1 in Exclude<keyof I, keyof PairDevicesRequest>]: never; }>(object: I): PairDevicesRequest;
271
- };
272
- export declare const AllocVEIPRequest: {
273
- encode(message: AllocVEIPRequest, writer?: _m0.Writer): _m0.Writer;
274
- decode(input: _m0.Reader | Uint8Array, length?: number): AllocVEIPRequest;
275
- fromJSON(object: any): AllocVEIPRequest;
276
- toJSON(message: AllocVEIPRequest): unknown;
277
- fromPartial<I extends {
278
- usage?: string;
279
- subdomain?: string;
280
- } & {
281
- usage?: string;
282
- subdomain?: string;
283
- } & { [K in Exclude<keyof I, keyof AllocVEIPRequest>]: never; }>(object: I): AllocVEIPRequest;
284
- };
285
- export declare const AllocVEIPReply: {
286
- encode(message: AllocVEIPReply, writer?: _m0.Writer): _m0.Writer;
287
- decode(input: _m0.Reader | Uint8Array, length?: number): AllocVEIPReply;
288
- fromJSON(object: any): AllocVEIPReply;
289
- toJSON(message: AllocVEIPReply): unknown;
290
- fromPartial<I extends {
291
- ip?: string;
292
- } & {
293
- ip?: string;
294
- } & { [K in Exclude<keyof I, "ip">]: never; }>(object: I): AllocVEIPReply;
295
- };
296
- export declare const FreeVEIPRequest: {
297
- encode(message: FreeVEIPRequest, writer?: _m0.Writer): _m0.Writer;
298
- decode(input: _m0.Reader | Uint8Array, length?: number): FreeVEIPRequest;
299
- fromJSON(object: any): FreeVEIPRequest;
300
- toJSON(message: FreeVEIPRequest): unknown;
301
- fromPartial<I extends {
302
- ip?: string;
303
- waitSecond?: number;
304
- } & {
305
- ip?: string;
306
- waitSecond?: number;
307
- } & { [K in Exclude<keyof I, keyof FreeVEIPRequest>]: never; }>(object: I): FreeVEIPRequest;
308
- };
309
- export declare const FreeVEIPReply: {
310
- encode(_: FreeVEIPReply, writer?: _m0.Writer): _m0.Writer;
311
- decode(input: _m0.Reader | Uint8Array, length?: number): FreeVEIPReply;
312
- fromJSON(_: any): FreeVEIPReply;
313
- toJSON(_: FreeVEIPReply): unknown;
314
- fromPartial<I extends {} & {} & { [K in Exclude<keyof I, never>]: never; }>(_: I): FreeVEIPReply;
315
- };
316
- export declare const AppCertRequest: {
317
- encode(message: AppCertRequest, writer?: _m0.Writer): _m0.Writer;
318
- decode(input: _m0.Reader | Uint8Array, length?: number): AppCertRequest;
319
- fromJSON(object: any): AppCertRequest;
320
- toJSON(message: AppCertRequest): unknown;
321
- fromPartial<I extends {
322
- appid?: string;
323
- uid?: string;
324
- validSeconds?: number;
325
- } & {
326
- appid?: string;
327
- uid?: string;
328
- validSeconds?: number;
329
- } & { [K in Exclude<keyof I, keyof AppCertRequest>]: never; }>(object: I): AppCertRequest;
330
- };
331
- export declare const AppCertReply: {
332
- encode(message: AppCertReply, writer?: _m0.Writer): _m0.Writer;
333
- decode(input: _m0.Reader | Uint8Array, length?: number): AppCertReply;
334
- fromJSON(object: any): AppCertReply;
335
- toJSON(message: AppCertReply): unknown;
336
- fromPartial<I extends {
337
- cert?: string;
338
- privateKey?: string;
339
- boxCert?: string;
340
- } & {
341
- cert?: string;
342
- privateKey?: string;
343
- boxCert?: string;
344
- } & { [K in Exclude<keyof I, keyof AppCertReply>]: never; }>(object: I): AppCertReply;
345
- };
346
- export declare const AuthToken: {
347
- encode(message: AuthToken, writer?: _m0.Writer): _m0.Writer;
348
- decode(input: _m0.Reader | Uint8Array, length?: number): AuthToken;
349
- fromJSON(object: any): AuthToken;
350
- toJSON(message: AuthToken): unknown;
351
- fromPartial<I extends {
352
- token?: string;
353
- autologinTokenPostUrl?: string;
354
- accessIp?: string;
355
- autologinRedirectUrl?: string;
356
- tokenType?: AuthToken_TokenType;
357
- } & {
358
- token?: string;
359
- autologinTokenPostUrl?: string;
360
- accessIp?: string;
361
- autologinRedirectUrl?: string;
362
- tokenType?: AuthToken_TokenType;
363
- } & { [K in Exclude<keyof I, keyof AuthToken>]: never; }>(object: I): AuthToken;
364
- };
365
- export declare const LoginInfo: {
366
- encode(message: LoginInfo, writer?: _m0.Writer): _m0.Writer;
367
- decode(input: _m0.Reader | Uint8Array, length?: number): LoginInfo;
368
- fromJSON(object: any): LoginInfo;
369
- toJSON(message: LoginInfo): unknown;
370
- fromPartial<I extends {
371
- uid?: string;
372
- deviceId?: string;
373
- when?: Date | undefined;
374
- autologinTokenRequestContent?: string;
375
- deviceVersion?: string;
376
- } & {
377
- uid?: string;
378
- deviceId?: string;
379
- when?: Date | undefined;
380
- autologinTokenRequestContent?: string;
381
- deviceVersion?: string;
382
- } & { [K in Exclude<keyof I, keyof LoginInfo>]: never; }>(object: I): LoginInfo;
383
- };
384
- export declare const DeviceID: {
385
- encode(message: DeviceID, writer?: _m0.Writer): _m0.Writer;
386
- decode(input: _m0.Reader | Uint8Array, length?: number): DeviceID;
387
- fromJSON(object: any): DeviceID;
388
- toJSON(message: DeviceID): unknown;
389
- fromPartial<I extends {
390
- id?: string;
391
- } & {
392
- id?: string;
393
- } & { [K in Exclude<keyof I, "id">]: never; }>(object: I): DeviceID;
394
- };
395
- export declare const BoxInfo: {
396
- encode(message: BoxInfo, writer?: _m0.Writer): _m0.Writer;
397
- decode(input: _m0.Reader | Uint8Array, length?: number): BoxInfo;
398
- fromJSON(object: any): BoxInfo;
399
- toJSON(message: BoxInfo): unknown;
400
- fromPartial<I extends {
401
- originServer?: string;
402
- virtualIp?: string;
403
- boxId?: string;
404
- boxName?: string;
405
- boxDomain?: string;
406
- certReady?: boolean;
407
- boxCert?: string;
408
- } & {
409
- originServer?: string;
410
- virtualIp?: string;
411
- boxId?: string;
412
- boxName?: string;
413
- boxDomain?: string;
414
- certReady?: boolean;
415
- boxCert?: string;
416
- } & { [K in Exclude<keyof I, keyof BoxInfo>]: never; }>(object: I): BoxInfo;
417
- };
418
- export declare const DomainCertRequest: {
419
- encode(message: DomainCertRequest, writer?: _m0.Writer): _m0.Writer;
420
- decode(input: _m0.Reader | Uint8Array, length?: number): DomainCertRequest;
421
- fromJSON(object: any): DomainCertRequest;
422
- toJSON(message: DomainCertRequest): unknown;
423
- fromPartial<I extends {
424
- domain?: string;
425
- } & {
426
- domain?: string;
427
- } & { [K in Exclude<keyof I, "domain">]: never; }>(object: I): DomainCertRequest;
428
- };
429
- export declare const DomainCertReply: {
430
- encode(message: DomainCertReply, writer?: _m0.Writer): _m0.Writer;
431
- decode(input: _m0.Reader | Uint8Array, length?: number): DomainCertReply;
432
- fromJSON(object: any): DomainCertReply;
433
- toJSON(message: DomainCertReply): unknown;
434
- fromPartial<I extends {
435
- cert?: string;
436
- key?: string;
437
- ocsp?: Uint8Array;
438
- } & {
439
- cert?: string;
440
- key?: string;
441
- ocsp?: Uint8Array;
442
- } & { [K in Exclude<keyof I, keyof DomainCertReply>]: never; }>(object: I): DomainCertReply;
443
- };
444
- export declare const Device: {
445
- encode(message: Device, writer?: _m0.Writer): _m0.Writer;
446
- decode(input: _m0.Reader | Uint8Array, length?: number): Device;
447
- fromJSON(object: any): Device;
448
- toJSON(message: Device): unknown;
449
- fromPartial<I extends {
450
- udid?: string;
451
- peerId?: string;
452
- isOnline?: boolean;
453
- deviceApiUrl?: string;
454
- name?: string;
455
- model?: string;
456
- bindingTime?: Date | undefined;
457
- isMobile?: boolean;
458
- } & {
459
- udid?: string;
460
- peerId?: string;
461
- isOnline?: boolean;
462
- deviceApiUrl?: string;
463
- name?: string;
464
- model?: string;
465
- bindingTime?: Date | undefined;
466
- isMobile?: boolean;
467
- } & { [K in Exclude<keyof I, keyof Device>]: never; }>(object: I): Device;
468
- };
469
- export declare const ListDeviceRequest: {
470
- encode(message: ListDeviceRequest, writer?: _m0.Writer): _m0.Writer;
471
- decode(input: _m0.Reader | Uint8Array, length?: number): ListDeviceRequest;
472
- fromJSON(object: any): ListDeviceRequest;
473
- toJSON(message: ListDeviceRequest): unknown;
474
- fromPartial<I extends {
475
- uid?: string;
476
- } & {
477
- uid?: string;
478
- } & { [K in Exclude<keyof I, "uid">]: never; }>(object: I): ListDeviceRequest;
479
- };
480
- export declare const ListDeviceReply: {
481
- encode(message: ListDeviceReply, writer?: _m0.Writer): _m0.Writer;
482
- decode(input: _m0.Reader | Uint8Array, length?: number): ListDeviceReply;
483
- fromJSON(object: any): ListDeviceReply;
484
- toJSON(message: ListDeviceReply): unknown;
485
- fromPartial<I extends {
486
- devices?: {
487
- udid?: string;
488
- peerId?: string;
489
- isOnline?: boolean;
490
- deviceApiUrl?: string;
491
- name?: string;
492
- model?: string;
493
- bindingTime?: Date | undefined;
494
- isMobile?: boolean;
495
- }[];
496
- } & {
497
- devices?: {
498
- udid?: string;
499
- peerId?: string;
500
- isOnline?: boolean;
501
- deviceApiUrl?: string;
502
- name?: string;
503
- model?: string;
504
- bindingTime?: Date | undefined;
505
- isMobile?: boolean;
506
- }[] & ({
507
- udid?: string;
508
- peerId?: string;
509
- isOnline?: boolean;
510
- deviceApiUrl?: string;
511
- name?: string;
512
- model?: string;
513
- bindingTime?: Date | undefined;
514
- isMobile?: boolean;
515
- } & {
516
- udid?: string;
517
- peerId?: string;
518
- isOnline?: boolean;
519
- deviceApiUrl?: string;
520
- name?: string;
521
- model?: string;
522
- bindingTime?: Date | undefined;
523
- isMobile?: boolean;
524
- } & { [K in Exclude<keyof I["devices"][number], keyof Device>]: never; })[] & { [K_1 in Exclude<keyof I["devices"], keyof {
525
- udid?: string;
526
- peerId?: string;
527
- isOnline?: boolean;
528
- deviceApiUrl?: string;
529
- name?: string;
530
- model?: string;
531
- bindingTime?: Date | undefined;
532
- isMobile?: boolean;
533
- }[]>]: never; };
534
- } & { [K_2 in Exclude<keyof I, "devices">]: never; }>(object: I): ListDeviceReply;
535
- };
536
- export declare const UserID: {
537
- encode(message: UserID, writer?: _m0.Writer): _m0.Writer;
538
- decode(input: _m0.Reader | Uint8Array, length?: number): UserID;
539
- fromJSON(object: any): UserID;
540
- toJSON(message: UserID): unknown;
541
- fromPartial<I extends {
542
- uid?: string;
543
- } & {
544
- uid?: string;
545
- } & { [K in Exclude<keyof I, "uid">]: never; }>(object: I): UserID;
546
- };
547
- export declare const ChangeRoleReqeust: {
548
- encode(message: ChangeRoleReqeust, writer?: _m0.Writer): _m0.Writer;
549
- decode(input: _m0.Reader | Uint8Array, length?: number): ChangeRoleReqeust;
550
- fromJSON(object: any): ChangeRoleReqeust;
551
- toJSON(message: ChangeRoleReqeust): unknown;
552
- fromPartial<I extends {
553
- uid?: string;
554
- role?: Role;
555
- } & {
556
- uid?: string;
557
- role?: Role;
558
- } & { [K in Exclude<keyof I, keyof ChangeRoleReqeust>]: never; }>(object: I): ChangeRoleReqeust;
559
- };
560
- export declare const QueryRoleReply: {
561
- encode(message: QueryRoleReply, writer?: _m0.Writer): _m0.Writer;
562
- decode(input: _m0.Reader | Uint8Array, length?: number): QueryRoleReply;
563
- fromJSON(object: any): QueryRoleReply;
564
- toJSON(message: QueryRoleReply): unknown;
565
- fromPartial<I extends {
566
- uid?: string;
567
- role?: Role;
568
- } & {
569
- uid?: string;
570
- role?: Role;
571
- } & { [K in Exclude<keyof I, keyof QueryRoleReply>]: never; }>(object: I): QueryRoleReply;
572
- };
573
- export declare const ResetPasswordRequest: {
574
- encode(message: ResetPasswordRequest, writer?: _m0.Writer): _m0.Writer;
575
- decode(input: _m0.Reader | Uint8Array, length?: number): ResetPasswordRequest;
576
- fromJSON(object: any): ResetPasswordRequest;
577
- toJSON(message: ResetPasswordRequest): unknown;
578
- fromPartial<I extends {
579
- uid?: string;
580
- oldPassword?: string;
581
- newPassword?: string;
582
- } & {
583
- uid?: string;
584
- oldPassword?: string;
585
- newPassword?: string;
586
- } & { [K in Exclude<keyof I, keyof ResetPasswordRequest>]: never; }>(object: I): ResetPasswordRequest;
587
- };
588
- export declare const DeleteUserRequest: {
589
- encode(message: DeleteUserRequest, writer?: _m0.Writer): _m0.Writer;
590
- decode(input: _m0.Reader | Uint8Array, length?: number): DeleteUserRequest;
591
- fromJSON(object: any): DeleteUserRequest;
592
- toJSON(message: DeleteUserRequest): unknown;
593
- fromPartial<I extends {
594
- uid?: string;
595
- } & {
596
- uid?: string;
597
- } & { [K in Exclude<keyof I, "uid">]: never; }>(object: I): DeleteUserRequest;
598
- };
599
- export declare const CreateUserRequest: {
600
- encode(message: CreateUserRequest, writer?: _m0.Writer): _m0.Writer;
601
- decode(input: _m0.Reader | Uint8Array, length?: number): CreateUserRequest;
602
- fromJSON(object: any): CreateUserRequest;
603
- toJSON(message: CreateUserRequest): unknown;
604
- fromPartial<I extends {
605
- uid?: string;
606
- password?: string;
607
- role?: Role;
608
- } & {
609
- uid?: string;
610
- password?: string;
611
- role?: Role;
612
- } & { [K in Exclude<keyof I, keyof CreateUserRequest>]: never; }>(object: I): CreateUserRequest;
613
- };
614
- export declare const ForceResetPasswordRequest: {
615
- encode(message: ForceResetPasswordRequest, writer?: _m0.Writer): _m0.Writer;
616
- decode(input: _m0.Reader | Uint8Array, length?: number): ForceResetPasswordRequest;
617
- fromJSON(object: any): ForceResetPasswordRequest;
618
- toJSON(message: ForceResetPasswordRequest): unknown;
619
- fromPartial<I extends {
620
- uid?: string;
621
- newPassword?: string;
622
- } & {
623
- uid?: string;
624
- newPassword?: string;
625
- } & { [K in Exclude<keyof I, keyof ForceResetPasswordRequest>]: never; }>(object: I): ForceResetPasswordRequest;
626
- };
627
- export declare const LogoutRequest: {
628
- encode(message: LogoutRequest, writer?: _m0.Writer): _m0.Writer;
629
- decode(input: _m0.Reader | Uint8Array, length?: number): LogoutRequest;
630
- fromJSON(object: any): LogoutRequest;
631
- toJSON(message: LogoutRequest): unknown;
632
- fromPartial<I extends {
633
- uid?: string;
634
- udid?: string;
635
- reason?: LogoutRequest_Reason;
636
- } & {
637
- uid?: string;
638
- udid?: string;
639
- reason?: LogoutRequest_Reason;
640
- } & { [K in Exclude<keyof I, keyof LogoutRequest>]: never; }>(object: I): LogoutRequest;
641
- };
642
- export declare const CheckPasswordRequest: {
643
- encode(message: CheckPasswordRequest, writer?: _m0.Writer): _m0.Writer;
644
- decode(input: _m0.Reader | Uint8Array, length?: number): CheckPasswordRequest;
645
- fromJSON(object: any): CheckPasswordRequest;
646
- toJSON(message: CheckPasswordRequest): unknown;
647
- fromPartial<I extends {
648
- uid?: string;
649
- password?: string;
650
- } & {
651
- uid?: string;
652
- password?: string;
653
- } & { [K in Exclude<keyof I, keyof CheckPasswordRequest>]: never; }>(object: I): CheckPasswordRequest;
654
- };
655
- export interface HPortalSys {
656
- /** 用auth-token反向查询登陆的设备以及UID */
657
- QueryLogin(request: DeepPartial<AuthToken>, metadata?: grpc.Metadata): Promise<LoginInfo>;
658
- /** 根据UID返回所有的设备列表 */
659
- ListDevices(request: DeepPartial<ListDeviceRequest>, metadata?: grpc.Metadata): Promise<ListDeviceReply>;
660
- QueryDeviceByID(request: DeepPartial<DeviceID>, metadata?: grpc.Metadata): Promise<Device>;
661
- QueryBoxInfo(request: DeepPartial<Empty>, metadata?: grpc.Metadata): Promise<BoxInfo>;
662
- /**
663
- * 获取盒子所属域名下或下一级域名的https证书。
664
- * 注意不是所有ACME服务器都支持泛域名。
665
- */
666
- GetDomainCert(request: DeepPartial<DomainCertRequest>, metadata?: grpc.Metadata): Promise<DomainCertReply>;
667
- GetDomainSelfCert(request: DeepPartial<DomainCertRequest>, metadata?: grpc.Metadata): Promise<DomainCertReply>;
668
- /**
669
- * 在部署具体app前,调用此接口获取app证书
670
- * APP证书格式为:
671
- * Issuer: O = $BOX.ORIGIN, CN = $BOX.DOMAIN, serialNumber = $BOX.ID
672
- * Subject: O = $BOX.ORIGIN, CN = $APP.DOMAIN, serialNumber = '$UID@$APP.ID || $APP.ID'
673
- * Issuer为box.crt,通过QueryBoxInfo查询到BoxInfo.BoxCrt。并且box.crt的公钥与box.id是一一对应关系。
674
- *
675
- * 盒子内部组件可以直接通过QueryBoxInfo来验证信任链是否合法,盒子外部系统需要通过其他机制比如libp2p.identify去验证box.crt的合法性。
676
- */
677
- GetAppCert(request: DeepPartial<AppCertRequest>, metadata?: grpc.Metadata): Promise<AppCertReply>;
678
- /** 申请额外的外部可访问的IP,并配置对应访问域名 */
679
- AllocVirtualExternalIP(request: DeepPartial<AllocVEIPRequest>, metadata?: grpc.Metadata): Promise<AllocVEIPReply>;
680
- /** 释放虚拟IP */
681
- FreeVirtualExternalIP(request: DeepPartial<FreeVEIPRequest>, metadata?: grpc.Metadata): Promise<FreeVEIPReply>;
682
- PairDevices(request: DeepPartial<PairDevicesRequest>, metadata?: grpc.Metadata): Observable<Empty>;
683
- /** 查询所有UID */
684
- ListUsers(request: DeepPartial<Empty>, metadata?: grpc.Metadata): Promise<ListUsersReply>;
685
- /** 根据用户uid查询用户信息 */
686
- QueryRole(request: DeepPartial<UserID>, metadata?: grpc.Metadata): Promise<QueryRoleReply>;
687
- /** 修改指定uid的用户角色 */
688
- ChangeRole(request: DeepPartial<ChangeRoleReqeust>, metadata?: grpc.Metadata): Promise<Empty>;
689
- /** 通过验证旧密码修改新的密码 */
690
- ResetPassword(request: DeepPartial<ResetPasswordRequest>, metadata?: grpc.Metadata): Promise<Empty>;
691
- /** 删除用户信息 */
692
- DeleteUser(request: DeepPartial<DeleteUserRequest>, metadata?: grpc.Metadata): Promise<Empty>;
693
- /** 创建用户信息 */
694
- CreateUser(request: DeepPartial<CreateUserRequest>, metadata?: grpc.Metadata): Promise<Empty>;
695
- /** 强制重置用户密码 */
696
- ForceResetPassword(request: DeepPartial<ForceResetPasswordRequest>, metadata?: grpc.Metadata): Promise<Empty>;
697
- /** 生成用户注册token,以便上层实现各类用户注册机制 */
698
- GenUserInvitation(request: DeepPartial<GenUserInvitationRequest>, metadata?: grpc.Metadata): Promise<UserInvitation>;
699
- /** 注销当前用户指定设备,同时将连接断开 */
700
- Logout(request: DeepPartial<LogoutRequest>, metadata?: grpc.Metadata): Promise<Empty>;
701
- /** 校验用户密码是否正确 */
702
- CheckPassword(request: DeepPartial<CheckPasswordRequest>, metadata?: grpc.Metadata): Promise<Empty>;
703
- }
704
- export declare class HPortalSysClientImpl implements HPortalSys {
705
- private readonly rpc;
706
- constructor(rpc: Rpc);
707
- QueryLogin(request: DeepPartial<AuthToken>, metadata?: grpc.Metadata): Promise<LoginInfo>;
708
- ListDevices(request: DeepPartial<ListDeviceRequest>, metadata?: grpc.Metadata): Promise<ListDeviceReply>;
709
- QueryDeviceByID(request: DeepPartial<DeviceID>, metadata?: grpc.Metadata): Promise<Device>;
710
- QueryBoxInfo(request: DeepPartial<Empty>, metadata?: grpc.Metadata): Promise<BoxInfo>;
711
- GetDomainCert(request: DeepPartial<DomainCertRequest>, metadata?: grpc.Metadata): Promise<DomainCertReply>;
712
- GetDomainSelfCert(request: DeepPartial<DomainCertRequest>, metadata?: grpc.Metadata): Promise<DomainCertReply>;
713
- GetAppCert(request: DeepPartial<AppCertRequest>, metadata?: grpc.Metadata): Promise<AppCertReply>;
714
- AllocVirtualExternalIP(request: DeepPartial<AllocVEIPRequest>, metadata?: grpc.Metadata): Promise<AllocVEIPReply>;
715
- FreeVirtualExternalIP(request: DeepPartial<FreeVEIPRequest>, metadata?: grpc.Metadata): Promise<FreeVEIPReply>;
716
- PairDevices(request: DeepPartial<PairDevicesRequest>, metadata?: grpc.Metadata): Observable<Empty>;
717
- ListUsers(request: DeepPartial<Empty>, metadata?: grpc.Metadata): Promise<ListUsersReply>;
718
- QueryRole(request: DeepPartial<UserID>, metadata?: grpc.Metadata): Promise<QueryRoleReply>;
719
- ChangeRole(request: DeepPartial<ChangeRoleReqeust>, metadata?: grpc.Metadata): Promise<Empty>;
720
- ResetPassword(request: DeepPartial<ResetPasswordRequest>, metadata?: grpc.Metadata): Promise<Empty>;
721
- DeleteUser(request: DeepPartial<DeleteUserRequest>, metadata?: grpc.Metadata): Promise<Empty>;
722
- CreateUser(request: DeepPartial<CreateUserRequest>, metadata?: grpc.Metadata): Promise<Empty>;
723
- ForceResetPassword(request: DeepPartial<ForceResetPasswordRequest>, metadata?: grpc.Metadata): Promise<Empty>;
724
- GenUserInvitation(request: DeepPartial<GenUserInvitationRequest>, metadata?: grpc.Metadata): Promise<UserInvitation>;
725
- Logout(request: DeepPartial<LogoutRequest>, metadata?: grpc.Metadata): Promise<Empty>;
726
- CheckPassword(request: DeepPartial<CheckPasswordRequest>, metadata?: grpc.Metadata): Promise<Empty>;
727
- }
728
- export declare const HPortalSysDesc: {
729
- serviceName: string;
730
- };
731
- export declare const HPortalSysQueryLoginDesc: UnaryMethodDefinitionish;
732
- export declare const HPortalSysListDevicesDesc: UnaryMethodDefinitionish;
733
- export declare const HPortalSysQueryDeviceByIDDesc: UnaryMethodDefinitionish;
734
- export declare const HPortalSysQueryBoxInfoDesc: UnaryMethodDefinitionish;
735
- export declare const HPortalSysGetDomainCertDesc: UnaryMethodDefinitionish;
736
- export declare const HPortalSysGetDomainSelfCertDesc: UnaryMethodDefinitionish;
737
- export declare const HPortalSysGetAppCertDesc: UnaryMethodDefinitionish;
738
- export declare const HPortalSysAllocVirtualExternalIPDesc: UnaryMethodDefinitionish;
739
- export declare const HPortalSysFreeVirtualExternalIPDesc: UnaryMethodDefinitionish;
740
- export declare const HPortalSysPairDevicesDesc: UnaryMethodDefinitionish;
741
- export declare const HPortalSysListUsersDesc: UnaryMethodDefinitionish;
742
- export declare const HPortalSysQueryRoleDesc: UnaryMethodDefinitionish;
743
- export declare const HPortalSysChangeRoleDesc: UnaryMethodDefinitionish;
744
- export declare const HPortalSysResetPasswordDesc: UnaryMethodDefinitionish;
745
- export declare const HPortalSysDeleteUserDesc: UnaryMethodDefinitionish;
746
- export declare const HPortalSysCreateUserDesc: UnaryMethodDefinitionish;
747
- export declare const HPortalSysForceResetPasswordDesc: UnaryMethodDefinitionish;
748
- export declare const HPortalSysGenUserInvitationDesc: UnaryMethodDefinitionish;
749
- export declare const HPortalSysLogoutDesc: UnaryMethodDefinitionish;
750
- export declare const HPortalSysCheckPasswordDesc: UnaryMethodDefinitionish;
751
- interface UnaryMethodDefinitionishR extends grpc.UnaryMethodDefinition<any, any> {
752
- requestStream: any;
753
- responseStream: any;
754
- }
755
- declare type UnaryMethodDefinitionish = UnaryMethodDefinitionishR;
756
- interface Rpc {
757
- unary<T extends UnaryMethodDefinitionish>(methodDesc: T, request: any, metadata: grpc.Metadata | undefined): Promise<any>;
758
- invoke<T extends UnaryMethodDefinitionish>(methodDesc: T, request: any, metadata: grpc.Metadata | undefined): Observable<any>;
759
- }
760
- export declare class GrpcWebImpl {
761
- private host;
762
- private options;
763
- constructor(host: string, options: {
764
- transport?: grpc.TransportFactory;
765
- streamingTransport?: grpc.TransportFactory;
766
- debug?: boolean;
767
- metadata?: grpc.Metadata;
768
- upStreamRetryCodes?: number[];
769
- });
770
- unary<T extends UnaryMethodDefinitionish>(methodDesc: T, _request: any, metadata: grpc.Metadata | undefined): Promise<any>;
771
- invoke<T extends UnaryMethodDefinitionish>(methodDesc: T, _request: any, metadata: grpc.Metadata | undefined): Observable<any>;
772
- }
773
- declare type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
774
- declare type DeepPartial<T> = T extends Builtin ? T : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>> : T extends {} ? {
775
- [K in keyof T]?: DeepPartial<T[K]>;
776
- } : Partial<T>;
777
- export declare class GrpcWebError extends Error {
778
- code: grpc.Code;
779
- metadata: grpc.Metadata;
780
- constructor(message: string, code: grpc.Code, metadata: grpc.Metadata);
781
- }
782
- export {};
783
- //# sourceMappingURL=portal-server.d.ts.map