@lazycatcloud/sdk 0.1.141 → 0.1.144

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 (220) hide show
  1. package/common/box.ts +545 -0
  2. package/common/browseronly.ts +520 -0
  3. package/common/end_device.ts +635 -0
  4. package/common/file_handler.ts +485 -0
  5. package/common/filetrans.ts +1936 -0
  6. package/common/gateway.ts +663 -0
  7. package/common/media_meta.ts +319 -0
  8. package/common/message.ts +242 -0
  9. package/common/peripheral_device.ts +783 -0
  10. package/common/security_context.ts +729 -0
  11. package/common/users.ts +1044 -0
  12. package/dist/common/box.d.ts +1 -1
  13. package/dist/common/box.d.ts.map +1 -1
  14. package/dist/common/box.js +21 -37
  15. package/dist/common/box.js.map +1 -1
  16. package/dist/common/browseronly.d.ts +2 -2
  17. package/dist/common/browseronly.d.ts.map +1 -1
  18. package/dist/common/browseronly.js +12 -23
  19. package/dist/common/browseronly.js.map +1 -1
  20. package/dist/common/end_device.d.ts +2 -2
  21. package/dist/common/end_device.d.ts.map +1 -1
  22. package/dist/common/end_device.js +18 -41
  23. package/dist/common/end_device.js.map +1 -1
  24. package/dist/common/file_handler.d.ts.map +1 -1
  25. package/dist/common/file_handler.js +5 -15
  26. package/dist/common/file_handler.js.map +1 -1
  27. package/dist/common/filetrans.d.ts +2 -2
  28. package/dist/common/filetrans.d.ts.map +1 -1
  29. package/dist/common/filetrans.js +94 -221
  30. package/dist/common/filetrans.js.map +1 -1
  31. package/dist/common/gateway.d.ts +1 -1
  32. package/dist/common/gateway.d.ts.map +1 -1
  33. package/dist/common/gateway.js +14 -33
  34. package/dist/common/gateway.js.map +1 -1
  35. package/dist/common/media_meta.d.ts +85 -0
  36. package/dist/common/media_meta.d.ts.map +1 -0
  37. package/dist/common/media_meta.js +233 -0
  38. package/dist/common/media_meta.js.map +1 -0
  39. package/dist/common/message.d.ts.map +1 -1
  40. package/dist/common/message.js +13 -23
  41. package/dist/common/message.js.map +1 -1
  42. package/dist/common/peripheral_device.d.ts +2 -2
  43. package/dist/common/peripheral_device.d.ts.map +1 -1
  44. package/dist/common/peripheral_device.js +22 -39
  45. package/dist/common/peripheral_device.js.map +1 -1
  46. package/dist/common/security_context.d.ts.map +1 -1
  47. package/dist/common/security_context.js +11 -33
  48. package/dist/common/security_context.js.map +1 -1
  49. package/dist/common/users.d.ts +2 -2
  50. package/dist/common/users.d.ts.map +1 -1
  51. package/dist/common/users.js +10 -24
  52. package/dist/common/users.js.map +1 -1
  53. package/dist/dlna/dlna.d.ts +2 -2
  54. package/dist/dlna/dlna.d.ts.map +1 -1
  55. package/dist/dlna/dlna.js +23 -58
  56. package/dist/dlna/dlna.js.map +1 -1
  57. package/dist/extentions/app_common.d.ts +1 -1
  58. package/dist/extentions/app_common.d.ts.map +1 -1
  59. package/dist/extentions/app_common.js +21 -8
  60. package/dist/extentions/app_common.js.map +1 -1
  61. package/dist/extentions/index.d.ts +1 -1
  62. package/dist/extentions/index.d.ts.map +1 -1
  63. package/dist/extentions/unsafe_app.d.ts +3 -0
  64. package/dist/extentions/unsafe_app.d.ts.map +1 -1
  65. package/dist/extentions/unsafe_app.js +21 -0
  66. package/dist/extentions/unsafe_app.js.map +1 -1
  67. package/dist/google/protobuf/descriptor.d.ts +0 -1
  68. package/dist/google/protobuf/descriptor.d.ts.map +1 -1
  69. package/dist/google/protobuf/descriptor.js +176 -406
  70. package/dist/google/protobuf/descriptor.js.map +1 -1
  71. package/dist/google/protobuf/empty.d.ts.map +1 -1
  72. package/dist/google/protobuf/empty.js.map +1 -1
  73. package/dist/google/protobuf/timestamp.d.ts +0 -2
  74. package/dist/google/protobuf/timestamp.d.ts.map +1 -1
  75. package/dist/google/protobuf/timestamp.js +9 -6
  76. package/dist/google/protobuf/timestamp.js.map +1 -1
  77. package/dist/index.d.ts +1 -0
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +4 -10
  80. package/dist/index.js.map +1 -1
  81. package/dist/lanforward/lanforward.d.ts +1 -1
  82. package/dist/lanforward/lanforward.d.ts.map +1 -1
  83. package/dist/lanforward/lanforward.js +7 -12
  84. package/dist/lanforward/lanforward.js.map +1 -1
  85. package/dist/localdevice/clipboard.d.ts +1 -1
  86. package/dist/localdevice/clipboard.d.ts.map +1 -1
  87. package/dist/localdevice/clipboard.js +17 -25
  88. package/dist/localdevice/clipboard.js.map +1 -1
  89. package/dist/localdevice/config.d.ts.map +1 -1
  90. package/dist/localdevice/config.js +3 -8
  91. package/dist/localdevice/config.js.map +1 -1
  92. package/dist/localdevice/device.d.ts +1 -1
  93. package/dist/localdevice/device.d.ts.map +1 -1
  94. package/dist/localdevice/device.js +4 -9
  95. package/dist/localdevice/device.js.map +1 -1
  96. package/dist/localdevice/dialog.d.ts +1 -1
  97. package/dist/localdevice/dialog.d.ts.map +1 -1
  98. package/dist/localdevice/dialog.js +8 -22
  99. package/dist/localdevice/dialog.js.map +1 -1
  100. package/dist/localdevice/local-launch.d.ts.map +1 -1
  101. package/dist/localdevice/local-launch.js +9 -32
  102. package/dist/localdevice/local-launch.js.map +1 -1
  103. package/dist/localdevice/network.d.ts +1 -1
  104. package/dist/localdevice/network.d.ts.map +1 -1
  105. package/dist/localdevice/network.js +3 -6
  106. package/dist/localdevice/network.js.map +1 -1
  107. package/dist/localdevice/permission.d.ts +1 -1
  108. package/dist/localdevice/permission.d.ts.map +1 -1
  109. package/dist/localdevice/permission.js +18 -35
  110. package/dist/localdevice/permission.js.map +1 -1
  111. package/dist/localdevice/photo.d.ts +1 -1
  112. package/dist/localdevice/photo.d.ts.map +1 -1
  113. package/dist/localdevice/photo.js +64 -156
  114. package/dist/localdevice/photo.js.map +1 -1
  115. package/dist/package.json +1 -5
  116. package/dist/ssdp/ssdp.d.ts +1 -1
  117. package/dist/ssdp/ssdp.d.ts.map +1 -1
  118. package/dist/ssdp/ssdp.js +6 -9
  119. package/dist/ssdp/ssdp.js.map +1 -1
  120. package/dist/sys/OS_daemon.d.ts +1 -1
  121. package/dist/sys/OS_daemon.d.ts.map +1 -1
  122. package/dist/sys/OS_daemon.js +5 -14
  123. package/dist/sys/OS_daemon.js.map +1 -1
  124. package/dist/sys/OS_snapshot.d.ts +1 -1
  125. package/dist/sys/OS_snapshot.d.ts.map +1 -1
  126. package/dist/sys/OS_snapshot.js +41 -81
  127. package/dist/sys/OS_snapshot.js.map +1 -1
  128. package/dist/sys/OS_upgrader.d.ts +1 -1
  129. package/dist/sys/OS_upgrader.d.ts.map +1 -1
  130. package/dist/sys/OS_upgrader.js +22 -39
  131. package/dist/sys/OS_upgrader.js.map +1 -1
  132. package/dist/sys/btrfs.d.ts +1 -1
  133. package/dist/sys/btrfs.d.ts.map +1 -1
  134. package/dist/sys/btrfs.js +14 -22
  135. package/dist/sys/btrfs.js.map +1 -1
  136. package/dist/sys/devopt.d.ts +1 -1
  137. package/dist/sys/devopt.d.ts.map +1 -1
  138. package/dist/sys/devopt.js +9 -25
  139. package/dist/sys/devopt.js.map +1 -1
  140. package/dist/sys/event.d.ts +2 -2
  141. package/dist/sys/event.d.ts.map +1 -1
  142. package/dist/sys/event.js +15 -30
  143. package/dist/sys/event.js.map +1 -1
  144. package/dist/sys/hc-core/hc-core.d.ts +2 -2
  145. package/dist/sys/hc-core/hc-core.d.ts.map +1 -1
  146. package/dist/sys/hc-core/hc-core.js +32 -65
  147. package/dist/sys/hc-core/hc-core.js.map +1 -1
  148. package/dist/sys/ingress.d.ts +1 -1
  149. package/dist/sys/ingress.d.ts.map +1 -1
  150. package/dist/sys/ingress.js +19 -36
  151. package/dist/sys/ingress.js.map +1 -1
  152. package/dist/sys/network_manager.d.ts +1 -1
  153. package/dist/sys/network_manager.d.ts.map +1 -1
  154. package/dist/sys/network_manager.js +22 -66
  155. package/dist/sys/network_manager.js.map +1 -1
  156. package/dist/sys/package_manager.d.ts +1 -1
  157. package/dist/sys/package_manager.d.ts.map +1 -1
  158. package/dist/sys/package_manager.js +36 -73
  159. package/dist/sys/package_manager.js.map +1 -1
  160. package/dist/sys/portal-server/portal-server.d.ts +2 -2
  161. package/dist/sys/portal-server/portal-server.d.ts.map +1 -1
  162. package/dist/sys/portal-server/portal-server.js +62 -157
  163. package/dist/sys/portal-server/portal-server.js.map +1 -1
  164. package/dist/sys/snapd.d.ts +1 -1
  165. package/dist/sys/snapd.d.ts.map +1 -1
  166. package/dist/sys/snapd.js +20 -50
  167. package/dist/sys/snapd.js.map +1 -1
  168. package/dlna/dlna.ts +895 -0
  169. package/docs/contribute.md +40 -0
  170. package/docs/extentions/AppCommon.md +30 -0
  171. package/extentions/app_common.ts +63 -0
  172. package/extentions/base.ts +459 -0
  173. package/extentions/index.ts +27 -0
  174. package/extentions/safe_app.ts +60 -0
  175. package/extentions/unsafe_app.ts +107 -0
  176. package/google/protobuf/descriptor.ts +3778 -0
  177. package/google/protobuf/empty.ts +64 -0
  178. package/google/protobuf/timestamp.ts +214 -0
  179. package/grpcweb.ts +106 -0
  180. package/index.ts +204 -0
  181. package/lanforward/lanforward.ts +301 -0
  182. package/localdevice/clipboard.ts +499 -0
  183. package/localdevice/config.ts +268 -0
  184. package/localdevice/device.ts +218 -0
  185. package/localdevice/dialog.ts +707 -0
  186. package/localdevice/local-launch.ts +954 -0
  187. package/localdevice/network.ts +273 -0
  188. package/localdevice/permission.ts +733 -0
  189. package/localdevice/photo.ts +1497 -0
  190. package/package.json +1 -5
  191. package/ssdp/ssdp.ts +332 -0
  192. package/sys/OS_daemon.ts +325 -0
  193. package/sys/OS_snapshot.ts +1714 -0
  194. package/sys/OS_upgrader.ts +782 -0
  195. package/sys/btrfs.ts +530 -0
  196. package/sys/devopt.ts +250 -0
  197. package/sys/event.ts +787 -0
  198. package/sys/hc-core/hc-core.ts +1582 -0
  199. package/sys/ingress.ts +953 -0
  200. package/sys/network_manager.ts +874 -0
  201. package/sys/package_manager.ts +1931 -0
  202. package/sys/portal-server/portal-server.ts +2934 -0
  203. package/sys/snapd.ts +861 -0
  204. package/tsconfig.json +15 -0
  205. package/dist/API.d.ts +0 -24
  206. package/dist/API.d.ts.map +0 -1
  207. package/dist/API.js +0 -117
  208. package/dist/API.js.map +0 -1
  209. package/dist/google/protobuf/wrappers.d.ts +0 -182
  210. package/dist/google/protobuf/wrappers.d.ts.map +0 -1
  211. package/dist/google/protobuf/wrappers.js +0 -458
  212. package/dist/google/protobuf/wrappers.js.map +0 -1
  213. package/dist/sys/message.d.ts +0 -186
  214. package/dist/sys/message.d.ts.map +0 -1
  215. package/dist/sys/message.js +0 -493
  216. package/dist/sys/message.js.map +0 -1
  217. package/dist/sys/settings.d.ts +0 -68
  218. package/dist/sys/settings.d.ts.map +0 -1
  219. package/dist/sys/settings.js +0 -183
  220. package/dist/sys/settings.js.map +0 -1
@@ -0,0 +1,301 @@
1
+ /* eslint-disable */
2
+ import { grpc } from "@improbable-eng/grpc-web";
3
+ import { BrowserHeaders } from "browser-headers";
4
+ import _m0 from "protobufjs/minimal";
5
+ import { Observable } from "rxjs";
6
+ import { share } from "rxjs/operators";
7
+
8
+ export interface ForwardRequest {
9
+ /** lzc-manifest.yml中声明的service名称,默认为"app" */
10
+ serviceName: string;
11
+ port: number;
12
+ }
13
+
14
+ export interface ForwardResponse {
15
+ proxyUrl: string;
16
+ }
17
+
18
+ function createBaseForwardRequest(): ForwardRequest {
19
+ return { serviceName: "", port: 0 };
20
+ }
21
+
22
+ export const ForwardRequest = {
23
+ encode(message: ForwardRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
24
+ if (message.serviceName !== "") {
25
+ writer.uint32(10).string(message.serviceName);
26
+ }
27
+ if (message.port !== 0) {
28
+ writer.uint32(16).int32(message.port);
29
+ }
30
+ return writer;
31
+ },
32
+
33
+ decode(input: _m0.Reader | Uint8Array, length?: number): ForwardRequest {
34
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
35
+ let end = length === undefined ? reader.len : reader.pos + length;
36
+ const message = createBaseForwardRequest();
37
+ while (reader.pos < end) {
38
+ const tag = reader.uint32();
39
+ switch (tag >>> 3) {
40
+ case 1:
41
+ message.serviceName = reader.string();
42
+ break;
43
+ case 2:
44
+ message.port = reader.int32();
45
+ break;
46
+ default:
47
+ reader.skipType(tag & 7);
48
+ break;
49
+ }
50
+ }
51
+ return message;
52
+ },
53
+
54
+ fromJSON(object: any): ForwardRequest {
55
+ return {
56
+ serviceName: isSet(object.serviceName) ? String(object.serviceName) : "",
57
+ port: isSet(object.port) ? Number(object.port) : 0,
58
+ };
59
+ },
60
+
61
+ toJSON(message: ForwardRequest): unknown {
62
+ const obj: any = {};
63
+ message.serviceName !== undefined && (obj.serviceName = message.serviceName);
64
+ message.port !== undefined && (obj.port = Math.round(message.port));
65
+ return obj;
66
+ },
67
+
68
+ fromPartial<I extends Exact<DeepPartial<ForwardRequest>, I>>(object: I): ForwardRequest {
69
+ const message = createBaseForwardRequest();
70
+ message.serviceName = object.serviceName ?? "";
71
+ message.port = object.port ?? 0;
72
+ return message;
73
+ },
74
+ };
75
+
76
+ function createBaseForwardResponse(): ForwardResponse {
77
+ return { proxyUrl: "" };
78
+ }
79
+
80
+ export const ForwardResponse = {
81
+ encode(message: ForwardResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
82
+ if (message.proxyUrl !== "") {
83
+ writer.uint32(18).string(message.proxyUrl);
84
+ }
85
+ return writer;
86
+ },
87
+
88
+ decode(input: _m0.Reader | Uint8Array, length?: number): ForwardResponse {
89
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
90
+ let end = length === undefined ? reader.len : reader.pos + length;
91
+ const message = createBaseForwardResponse();
92
+ while (reader.pos < end) {
93
+ const tag = reader.uint32();
94
+ switch (tag >>> 3) {
95
+ case 2:
96
+ message.proxyUrl = reader.string();
97
+ break;
98
+ default:
99
+ reader.skipType(tag & 7);
100
+ break;
101
+ }
102
+ }
103
+ return message;
104
+ },
105
+
106
+ fromJSON(object: any): ForwardResponse {
107
+ return { proxyUrl: isSet(object.proxyUrl) ? String(object.proxyUrl) : "" };
108
+ },
109
+
110
+ toJSON(message: ForwardResponse): unknown {
111
+ const obj: any = {};
112
+ message.proxyUrl !== undefined && (obj.proxyUrl = message.proxyUrl);
113
+ return obj;
114
+ },
115
+
116
+ fromPartial<I extends Exact<DeepPartial<ForwardResponse>, I>>(object: I): ForwardResponse {
117
+ const message = createBaseForwardResponse();
118
+ message.proxyUrl = object.proxyUrl ?? "";
119
+ return message;
120
+ },
121
+ };
122
+
123
+ export interface LanForwardService {
124
+ /**
125
+ * 将特定service的特定端口上的http服务转发到局域网可直接访问的地址上,
126
+ * 返回被代理后的url. (实际使用时,需要使用此url拼接最终服务)
127
+ *
128
+ * 请求者需要主动关闭此请求以便停止相关服务
129
+ */
130
+ Forward(request: DeepPartial<ForwardRequest>, metadata?: grpc.Metadata): Observable<ForwardResponse>;
131
+ }
132
+
133
+ export class LanForwardServiceClientImpl implements LanForwardService {
134
+ private readonly rpc: Rpc;
135
+
136
+ constructor(rpc: Rpc) {
137
+ this.rpc = rpc;
138
+ this.Forward = this.Forward.bind(this);
139
+ }
140
+
141
+ Forward(request: DeepPartial<ForwardRequest>, metadata?: grpc.Metadata): Observable<ForwardResponse> {
142
+ return this.rpc.invoke(LanForwardServiceForwardDesc, ForwardRequest.fromPartial(request), metadata);
143
+ }
144
+ }
145
+
146
+ export const LanForwardServiceDesc = { serviceName: "lzc.lanforward.LanForwardService" };
147
+
148
+ export const LanForwardServiceForwardDesc: UnaryMethodDefinitionish = {
149
+ methodName: "Forward",
150
+ service: LanForwardServiceDesc,
151
+ requestStream: false,
152
+ responseStream: true,
153
+ requestType: {
154
+ serializeBinary() {
155
+ return ForwardRequest.encode(this).finish();
156
+ },
157
+ } as any,
158
+ responseType: {
159
+ deserializeBinary(data: Uint8Array) {
160
+ return {
161
+ ...ForwardResponse.decode(data),
162
+ toObject() {
163
+ return this;
164
+ },
165
+ };
166
+ },
167
+ } as any,
168
+ };
169
+
170
+ interface UnaryMethodDefinitionishR extends grpc.UnaryMethodDefinition<any, any> {
171
+ requestStream: any;
172
+ responseStream: any;
173
+ }
174
+
175
+ type UnaryMethodDefinitionish = UnaryMethodDefinitionishR;
176
+
177
+ interface Rpc {
178
+ unary<T extends UnaryMethodDefinitionish>(
179
+ methodDesc: T,
180
+ request: any,
181
+ metadata: grpc.Metadata | undefined,
182
+ ): Promise<any>;
183
+ invoke<T extends UnaryMethodDefinitionish>(
184
+ methodDesc: T,
185
+ request: any,
186
+ metadata: grpc.Metadata | undefined,
187
+ ): Observable<any>;
188
+ }
189
+
190
+ export class GrpcWebImpl {
191
+ private host: string;
192
+ private options: {
193
+ transport?: grpc.TransportFactory;
194
+ streamingTransport?: grpc.TransportFactory;
195
+ debug?: boolean;
196
+ metadata?: grpc.Metadata;
197
+ upStreamRetryCodes?: number[];
198
+ };
199
+
200
+ constructor(
201
+ host: string,
202
+ options: {
203
+ transport?: grpc.TransportFactory;
204
+ streamingTransport?: grpc.TransportFactory;
205
+ debug?: boolean;
206
+ metadata?: grpc.Metadata;
207
+ upStreamRetryCodes?: number[];
208
+ },
209
+ ) {
210
+ this.host = host;
211
+ this.options = options;
212
+ }
213
+
214
+ unary<T extends UnaryMethodDefinitionish>(
215
+ methodDesc: T,
216
+ _request: any,
217
+ metadata: grpc.Metadata | undefined,
218
+ ): Promise<any> {
219
+ const request = { ..._request, ...methodDesc.requestType };
220
+ const maybeCombinedMetadata = metadata && this.options.metadata
221
+ ? new BrowserHeaders({ ...this.options?.metadata.headersMap, ...metadata?.headersMap })
222
+ : metadata || this.options.metadata;
223
+ return new Promise((resolve, reject) => {
224
+ grpc.unary(methodDesc, {
225
+ request,
226
+ host: this.host,
227
+ metadata: maybeCombinedMetadata,
228
+ transport: this.options.transport,
229
+ debug: this.options.debug,
230
+ onEnd: function (response) {
231
+ if (response.status === grpc.Code.OK) {
232
+ resolve(response.message);
233
+ } else {
234
+ const err = new GrpcWebError(response.statusMessage, response.status, response.trailers);
235
+ reject(err);
236
+ }
237
+ },
238
+ });
239
+ });
240
+ }
241
+
242
+ invoke<T extends UnaryMethodDefinitionish>(
243
+ methodDesc: T,
244
+ _request: any,
245
+ metadata: grpc.Metadata | undefined,
246
+ ): Observable<any> {
247
+ const upStreamCodes = this.options.upStreamRetryCodes || [];
248
+ const DEFAULT_TIMEOUT_TIME: number = 3_000;
249
+ const request = { ..._request, ...methodDesc.requestType };
250
+ const maybeCombinedMetadata = metadata && this.options.metadata
251
+ ? new BrowserHeaders({ ...this.options?.metadata.headersMap, ...metadata?.headersMap })
252
+ : metadata || this.options.metadata;
253
+ return new Observable((observer) => {
254
+ const upStream = (() => {
255
+ const client = grpc.invoke(methodDesc, {
256
+ host: this.host,
257
+ request,
258
+ transport: this.options.streamingTransport || this.options.transport,
259
+ metadata: maybeCombinedMetadata,
260
+ debug: this.options.debug,
261
+ onMessage: (next) => observer.next(next),
262
+ onEnd: (code: grpc.Code, message: string, trailers: grpc.Metadata) => {
263
+ if (code === 0) {
264
+ observer.complete();
265
+ } else if (upStreamCodes.includes(code)) {
266
+ setTimeout(upStream, DEFAULT_TIMEOUT_TIME);
267
+ } else {
268
+ const err = new Error(message) as any;
269
+ err.code = code;
270
+ err.metadata = trailers;
271
+ observer.error(err);
272
+ }
273
+ },
274
+ });
275
+ observer.add(() => client.close());
276
+ });
277
+ upStream();
278
+ }).pipe(share());
279
+ }
280
+ }
281
+
282
+ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;
283
+
284
+ type DeepPartial<T> = T extends Builtin ? T
285
+ : T extends Array<infer U> ? Array<DeepPartial<U>> : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>
286
+ : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }
287
+ : Partial<T>;
288
+
289
+ type KeysOfUnion<T> = T extends T ? keyof T : never;
290
+ type Exact<P, I extends P> = P extends Builtin ? P
291
+ : P & { [K in keyof P]: Exact<P[K], I[K]> } & { [K in Exclude<keyof I, KeysOfUnion<P>>]: never };
292
+
293
+ function isSet(value: any): boolean {
294
+ return value !== null && value !== undefined;
295
+ }
296
+
297
+ export class GrpcWebError extends Error {
298
+ constructor(message: string, public code: grpc.Code, public metadata: grpc.Metadata) {
299
+ super(message);
300
+ }
301
+ }