@opengeni/agent-proto 3.2.2 → 3.3.0

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.
@@ -1108,7 +1108,16 @@ export interface Capabilities {
1108
1108
  * macOS desktop permissions (TCC), read without prompting. Present only on Mac
1109
1109
  * builds with desktop support; absence means unknown, never denied.
1110
1110
  */
1111
- macPermissions: MacDesktopPermissions | undefined;
1111
+ macPermissions:
1112
+ | MacDesktopPermissions
1113
+ | undefined;
1114
+ /**
1115
+ * The runner serves BrowserControlHttpRequest / BrowserControlHttpReadRequest:
1116
+ * one in-process loopback request to the agent-owned browser/computer
1117
+ * controller of an exact authority scope. Absent/false runners keep the legacy
1118
+ * path (a shell + curl command per controller request).
1119
+ */
1120
+ browserControlHttp: boolean;
1112
1121
  }
1113
1122
 
1114
1123
  /** The three macOS Privacy & Security grants desktop capture and input need. */
@@ -1608,6 +1617,66 @@ export interface BrowserControlEnsureResponse {
1608
1617
  sidecarGeneration: string;
1609
1618
  }
1610
1619
 
1620
+ /**
1621
+ * Send one HTTP request to the agent-owned browser/computer controller that
1622
+ * serves exactly `scope_id` at `scope_generation`, over loopback, inside the
1623
+ * runner process. The runner resolves the port itself; the control plane never
1624
+ * names an arbitrary local port. The bearer is the controller's own scoped
1625
+ * authority and is forwarded only to that controller.
1626
+ */
1627
+ export interface BrowserControlHttpRequest {
1628
+ scopeId: string;
1629
+ scopeGeneration: string;
1630
+ /** GET, POST, PUT or DELETE. */
1631
+ method: string;
1632
+ /** Absolute controller path with optional query, beginning with "/". */
1633
+ path: string;
1634
+ /** Bearer token value, without the "Bearer " prefix. */
1635
+ bearerToken: string;
1636
+ /** JSON request body. Sent only when has_body is set. */
1637
+ body: Uint8Array;
1638
+ hasBody: boolean;
1639
+ /** Whole-request deadline in milliseconds. */
1640
+ timeoutMs: number;
1641
+ /** Largest response body the caller accepts. Larger bodies fail the request. */
1642
+ maxResponseBytes: string;
1643
+ }
1644
+
1645
+ export interface BrowserControlHttpHeader {
1646
+ /** Lowercase header name. */
1647
+ name: string;
1648
+ value: string;
1649
+ }
1650
+
1651
+ export interface BrowserControlHttpResponse {
1652
+ status: number;
1653
+ headers: BrowserControlHttpHeader[];
1654
+ /** The whole body, or its first part when spool_id is set. */
1655
+ body: Uint8Array;
1656
+ /** Exact length of the complete body. */
1657
+ totalBytes: string;
1658
+ /**
1659
+ * Set when the complete body does not fit one reply. The remainder stays in a
1660
+ * short-lived runner spool; read it with BrowserControlHttpReadRequest from
1661
+ * offset len(body). The controller request itself is never repeated.
1662
+ */
1663
+ spoolId: string;
1664
+ }
1665
+
1666
+ /**
1667
+ * Read the next part of a spooled controller response. Reading the final part
1668
+ * releases the spool entry; unread entries expire after a short bound.
1669
+ */
1670
+ export interface BrowserControlHttpReadRequest {
1671
+ spoolId: string;
1672
+ offset: string;
1673
+ }
1674
+
1675
+ export interface BrowserControlHttpReadResponse {
1676
+ data: Uint8Array;
1677
+ done: boolean;
1678
+ }
1679
+
1611
1680
  /**
1612
1681
  * Open one browserd frame subscription and relay its canonical binary browser
1613
1682
  * frame messages over a fresh STREAM_KIND_BROWSER channel. browserd remains
@@ -2252,6 +2321,8 @@ export interface ControlRequest {
2252
2321
  | { $case: "computerFramesOpen"; computerFramesOpen: ComputerFramesOpenRequest }
2253
2322
  | { $case: "agentUpdateApply"; agentUpdateApply: AgentUpdateApplyRequest }
2254
2323
  | { $case: "credentialRenew"; credentialRenew: CredentialRenewRequest }
2324
+ | { $case: "browserControlHttp"; browserControlHttp: BrowserControlHttpRequest }
2325
+ | { $case: "browserControlHttpRead"; browserControlHttpRead: BrowserControlHttpReadRequest }
2255
2326
  | undefined;
2256
2327
  }
2257
2328
 
@@ -2294,6 +2365,8 @@ export interface ControlResponse {
2294
2365
  | { $case: "computerFramesOpen"; computerFramesOpen: ComputerFramesOpenResponse }
2295
2366
  | { $case: "agentUpdateApply"; agentUpdateApply: AgentUpdateApplyResponse }
2296
2367
  | { $case: "credentialRenew"; credentialRenew: CredentialRenewResponse }
2368
+ | { $case: "browserControlHttp"; browserControlHttp: BrowserControlHttpResponse }
2369
+ | { $case: "browserControlHttpRead"; browserControlHttpRead: BrowserControlHttpReadResponse }
2297
2370
  | undefined;
2298
2371
  }
2299
2372
 
@@ -2988,6 +3061,7 @@ function createBaseCapabilities(): Capabilities {
2988
3061
  transactionalFsWrite: false,
2989
3062
  credentialRenew: false,
2990
3063
  macPermissions: undefined,
3064
+ browserControlHttp: false,
2991
3065
  };
2992
3066
  }
2993
3067
 
@@ -3041,6 +3115,9 @@ export const Capabilities: MessageFns<Capabilities> = {
3041
3115
  if (message.macPermissions !== undefined) {
3042
3116
  MacDesktopPermissions.encode(message.macPermissions, writer.uint32(130).fork()).join();
3043
3117
  }
3118
+ if (message.browserControlHttp !== false) {
3119
+ writer.uint32(136).bool(message.browserControlHttp);
3120
+ }
3044
3121
  return writer;
3045
3122
  },
3046
3123
 
@@ -3179,6 +3256,14 @@ export const Capabilities: MessageFns<Capabilities> = {
3179
3256
  message.macPermissions = MacDesktopPermissions.decode(reader, reader.uint32());
3180
3257
  continue;
3181
3258
  }
3259
+ case 17: {
3260
+ if (tag !== 136) {
3261
+ break;
3262
+ }
3263
+
3264
+ message.browserControlHttp = reader.bool();
3265
+ continue;
3266
+ }
3182
3267
  }
3183
3268
  if ((tag & 7) === 4 || tag === 0) {
3184
3269
  break;
@@ -3246,6 +3331,11 @@ export const Capabilities: MessageFns<Capabilities> = {
3246
3331
  : isSet(object.mac_permissions)
3247
3332
  ? MacDesktopPermissions.fromJSON(object.mac_permissions)
3248
3333
  : undefined,
3334
+ browserControlHttp: isSet(object.browserControlHttp)
3335
+ ? globalThis.Boolean(object.browserControlHttp)
3336
+ : isSet(object.browser_control_http)
3337
+ ? globalThis.Boolean(object.browser_control_http)
3338
+ : false,
3249
3339
  };
3250
3340
  },
3251
3341
 
@@ -3299,6 +3389,9 @@ export const Capabilities: MessageFns<Capabilities> = {
3299
3389
  if (message.macPermissions !== undefined) {
3300
3390
  obj.macPermissions = MacDesktopPermissions.toJSON(message.macPermissions);
3301
3391
  }
3392
+ if (message.browserControlHttp !== false) {
3393
+ obj.browserControlHttp = message.browserControlHttp;
3394
+ }
3302
3395
  return obj;
3303
3396
  },
3304
3397
 
@@ -3327,6 +3420,7 @@ export const Capabilities: MessageFns<Capabilities> = {
3327
3420
  message.macPermissions = (object.macPermissions !== undefined && object.macPermissions !== null)
3328
3421
  ? MacDesktopPermissions.fromPartial(object.macPermissions)
3329
3422
  : undefined;
3423
+ message.browserControlHttp = object.browserControlHttp ?? false;
3330
3424
  return message;
3331
3425
  },
3332
3426
  };
@@ -8552,68 +8646,56 @@ export const BrowserControlEnsureResponse: MessageFns<BrowserControlEnsureRespon
8552
8646
  },
8553
8647
  };
8554
8648
 
8555
- function createBaseBrowserFramesOpenRequest(): BrowserFramesOpenRequest {
8649
+ function createBaseBrowserControlHttpRequest(): BrowserControlHttpRequest {
8556
8650
  return {
8557
8651
  scopeId: "",
8558
8652
  scopeGeneration: "",
8559
- browserSessionId: "",
8560
- controllerGeneration: "",
8561
- targetId: "",
8562
- viewToken: "",
8563
- expiresAtMs: "0",
8564
- format: "",
8565
- quality: 0,
8566
- maxWidth: 0,
8567
- maxHeight: 0,
8568
- everyNthFrame: 0,
8653
+ method: "",
8654
+ path: "",
8655
+ bearerToken: "",
8656
+ body: new Uint8Array(0),
8657
+ hasBody: false,
8658
+ timeoutMs: 0,
8659
+ maxResponseBytes: "0",
8569
8660
  };
8570
8661
  }
8571
8662
 
8572
- export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8573
- encode(message: BrowserFramesOpenRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
8663
+ export const BrowserControlHttpRequest: MessageFns<BrowserControlHttpRequest> = {
8664
+ encode(message: BrowserControlHttpRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
8574
8665
  if (message.scopeId !== "") {
8575
8666
  writer.uint32(10).string(message.scopeId);
8576
8667
  }
8577
8668
  if (message.scopeGeneration !== "") {
8578
8669
  writer.uint32(18).string(message.scopeGeneration);
8579
8670
  }
8580
- if (message.browserSessionId !== "") {
8581
- writer.uint32(26).string(message.browserSessionId);
8582
- }
8583
- if (message.controllerGeneration !== "") {
8584
- writer.uint32(34).string(message.controllerGeneration);
8585
- }
8586
- if (message.targetId !== "") {
8587
- writer.uint32(42).string(message.targetId);
8588
- }
8589
- if (message.viewToken !== "") {
8590
- writer.uint32(50).string(message.viewToken);
8671
+ if (message.method !== "") {
8672
+ writer.uint32(26).string(message.method);
8591
8673
  }
8592
- if (message.expiresAtMs !== "0") {
8593
- writer.uint32(56).int64(message.expiresAtMs);
8674
+ if (message.path !== "") {
8675
+ writer.uint32(34).string(message.path);
8594
8676
  }
8595
- if (message.format !== "") {
8596
- writer.uint32(66).string(message.format);
8677
+ if (message.bearerToken !== "") {
8678
+ writer.uint32(42).string(message.bearerToken);
8597
8679
  }
8598
- if (message.quality !== 0) {
8599
- writer.uint32(72).uint32(message.quality);
8680
+ if (message.body.length !== 0) {
8681
+ writer.uint32(50).bytes(message.body);
8600
8682
  }
8601
- if (message.maxWidth !== 0) {
8602
- writer.uint32(80).uint32(message.maxWidth);
8683
+ if (message.hasBody !== false) {
8684
+ writer.uint32(56).bool(message.hasBody);
8603
8685
  }
8604
- if (message.maxHeight !== 0) {
8605
- writer.uint32(88).uint32(message.maxHeight);
8686
+ if (message.timeoutMs !== 0) {
8687
+ writer.uint32(64).uint32(message.timeoutMs);
8606
8688
  }
8607
- if (message.everyNthFrame !== 0) {
8608
- writer.uint32(96).uint32(message.everyNthFrame);
8689
+ if (message.maxResponseBytes !== "0") {
8690
+ writer.uint32(72).uint64(message.maxResponseBytes);
8609
8691
  }
8610
8692
  return writer;
8611
8693
  },
8612
8694
 
8613
- decode(input: BinaryReader | Uint8Array, length?: number): BrowserFramesOpenRequest {
8695
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserControlHttpRequest {
8614
8696
  const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
8615
8697
  const end = length === undefined ? reader.len : reader.pos + length;
8616
- const message = createBaseBrowserFramesOpenRequest();
8698
+ const message = createBaseBrowserControlHttpRequest();
8617
8699
  while (reader.pos < end) {
8618
8700
  const tag = reader.uint32();
8619
8701
  switch (tag >>> 3) {
@@ -8638,7 +8720,7 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8638
8720
  break;
8639
8721
  }
8640
8722
 
8641
- message.browserSessionId = reader.string();
8723
+ message.method = reader.string();
8642
8724
  continue;
8643
8725
  }
8644
8726
  case 4: {
@@ -8646,7 +8728,7 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8646
8728
  break;
8647
8729
  }
8648
8730
 
8649
- message.controllerGeneration = reader.string();
8731
+ message.path = reader.string();
8650
8732
  continue;
8651
8733
  }
8652
8734
  case 5: {
@@ -8654,7 +8736,7 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8654
8736
  break;
8655
8737
  }
8656
8738
 
8657
- message.targetId = reader.string();
8739
+ message.bearerToken = reader.string();
8658
8740
  continue;
8659
8741
  }
8660
8742
  case 6: {
@@ -8662,7 +8744,7 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8662
8744
  break;
8663
8745
  }
8664
8746
 
8665
- message.viewToken = reader.string();
8747
+ message.body = reader.bytes();
8666
8748
  continue;
8667
8749
  }
8668
8750
  case 7: {
@@ -8670,15 +8752,15 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8670
8752
  break;
8671
8753
  }
8672
8754
 
8673
- message.expiresAtMs = reader.int64().toString();
8755
+ message.hasBody = reader.bool();
8674
8756
  continue;
8675
8757
  }
8676
8758
  case 8: {
8677
- if (tag !== 66) {
8759
+ if (tag !== 64) {
8678
8760
  break;
8679
8761
  }
8680
8762
 
8681
- message.format = reader.string();
8763
+ message.timeoutMs = reader.uint32();
8682
8764
  continue;
8683
8765
  }
8684
8766
  case 9: {
@@ -8686,31 +8768,7 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8686
8768
  break;
8687
8769
  }
8688
8770
 
8689
- message.quality = reader.uint32();
8690
- continue;
8691
- }
8692
- case 10: {
8693
- if (tag !== 80) {
8694
- break;
8695
- }
8696
-
8697
- message.maxWidth = reader.uint32();
8698
- continue;
8699
- }
8700
- case 11: {
8701
- if (tag !== 88) {
8702
- break;
8703
- }
8704
-
8705
- message.maxHeight = reader.uint32();
8706
- continue;
8707
- }
8708
- case 12: {
8709
- if (tag !== 96) {
8710
- break;
8711
- }
8712
-
8713
- message.everyNthFrame = reader.uint32();
8771
+ message.maxResponseBytes = reader.uint64().toString();
8714
8772
  continue;
8715
8773
  }
8716
8774
  }
@@ -8722,7 +8780,7 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8722
8780
  return message;
8723
8781
  },
8724
8782
 
8725
- fromJSON(object: any): BrowserFramesOpenRequest {
8783
+ fromJSON(object: any): BrowserControlHttpRequest {
8726
8784
  return {
8727
8785
  scopeId: isSet(object.scopeId)
8728
8786
  ? globalThis.String(object.scopeId)
@@ -8734,52 +8792,33 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8734
8792
  : isSet(object.scope_generation)
8735
8793
  ? globalThis.String(object.scope_generation)
8736
8794
  : "",
8737
- browserSessionId: isSet(object.browserSessionId)
8738
- ? globalThis.String(object.browserSessionId)
8739
- : isSet(object.browser_session_id)
8740
- ? globalThis.String(object.browser_session_id)
8741
- : "",
8742
- controllerGeneration: isSet(object.controllerGeneration)
8743
- ? globalThis.String(object.controllerGeneration)
8744
- : isSet(object.controller_generation)
8745
- ? globalThis.String(object.controller_generation)
8746
- : "",
8747
- targetId: isSet(object.targetId)
8748
- ? globalThis.String(object.targetId)
8749
- : isSet(object.target_id)
8750
- ? globalThis.String(object.target_id)
8751
- : "",
8752
- viewToken: isSet(object.viewToken)
8753
- ? globalThis.String(object.viewToken)
8754
- : isSet(object.view_token)
8755
- ? globalThis.String(object.view_token)
8795
+ method: isSet(object.method) ? globalThis.String(object.method) : "",
8796
+ path: isSet(object.path) ? globalThis.String(object.path) : "",
8797
+ bearerToken: isSet(object.bearerToken)
8798
+ ? globalThis.String(object.bearerToken)
8799
+ : isSet(object.bearer_token)
8800
+ ? globalThis.String(object.bearer_token)
8756
8801
  : "",
8757
- expiresAtMs: isSet(object.expiresAtMs)
8758
- ? globalThis.String(object.expiresAtMs)
8759
- : isSet(object.expires_at_ms)
8760
- ? globalThis.String(object.expires_at_ms)
8761
- : "0",
8762
- format: isSet(object.format) ? globalThis.String(object.format) : "",
8763
- quality: isSet(object.quality) ? globalThis.Number(object.quality) : 0,
8764
- maxWidth: isSet(object.maxWidth)
8765
- ? globalThis.Number(object.maxWidth)
8766
- : isSet(object.max_width)
8767
- ? globalThis.Number(object.max_width)
8768
- : 0,
8769
- maxHeight: isSet(object.maxHeight)
8770
- ? globalThis.Number(object.maxHeight)
8771
- : isSet(object.max_height)
8772
- ? globalThis.Number(object.max_height)
8773
- : 0,
8774
- everyNthFrame: isSet(object.everyNthFrame)
8775
- ? globalThis.Number(object.everyNthFrame)
8776
- : isSet(object.every_nth_frame)
8777
- ? globalThis.Number(object.every_nth_frame)
8802
+ body: isSet(object.body) ? bytesFromBase64(object.body) : new Uint8Array(0),
8803
+ hasBody: isSet(object.hasBody)
8804
+ ? globalThis.Boolean(object.hasBody)
8805
+ : isSet(object.has_body)
8806
+ ? globalThis.Boolean(object.has_body)
8807
+ : false,
8808
+ timeoutMs: isSet(object.timeoutMs)
8809
+ ? globalThis.Number(object.timeoutMs)
8810
+ : isSet(object.timeout_ms)
8811
+ ? globalThis.Number(object.timeout_ms)
8778
8812
  : 0,
8813
+ maxResponseBytes: isSet(object.maxResponseBytes)
8814
+ ? globalThis.String(object.maxResponseBytes)
8815
+ : isSet(object.max_response_bytes)
8816
+ ? globalThis.String(object.max_response_bytes)
8817
+ : "0",
8779
8818
  };
8780
8819
  },
8781
8820
 
8782
- toJSON(message: BrowserFramesOpenRequest): unknown {
8821
+ toJSON(message: BrowserControlHttpRequest): unknown {
8783
8822
  const obj: any = {};
8784
8823
  if (message.scopeId !== "") {
8785
8824
  obj.scopeId = message.scopeId;
@@ -8787,76 +8826,67 @@ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
8787
8826
  if (message.scopeGeneration !== "") {
8788
8827
  obj.scopeGeneration = message.scopeGeneration;
8789
8828
  }
8790
- if (message.browserSessionId !== "") {
8791
- obj.browserSessionId = message.browserSessionId;
8792
- }
8793
- if (message.controllerGeneration !== "") {
8794
- obj.controllerGeneration = message.controllerGeneration;
8795
- }
8796
- if (message.targetId !== "") {
8797
- obj.targetId = message.targetId;
8798
- }
8799
- if (message.viewToken !== "") {
8800
- obj.viewToken = message.viewToken;
8829
+ if (message.method !== "") {
8830
+ obj.method = message.method;
8801
8831
  }
8802
- if (message.expiresAtMs !== "0") {
8803
- obj.expiresAtMs = message.expiresAtMs;
8832
+ if (message.path !== "") {
8833
+ obj.path = message.path;
8804
8834
  }
8805
- if (message.format !== "") {
8806
- obj.format = message.format;
8835
+ if (message.bearerToken !== "") {
8836
+ obj.bearerToken = message.bearerToken;
8807
8837
  }
8808
- if (message.quality !== 0) {
8809
- obj.quality = Math.round(message.quality);
8838
+ if (message.body.length !== 0) {
8839
+ obj.body = base64FromBytes(message.body);
8810
8840
  }
8811
- if (message.maxWidth !== 0) {
8812
- obj.maxWidth = Math.round(message.maxWidth);
8841
+ if (message.hasBody !== false) {
8842
+ obj.hasBody = message.hasBody;
8813
8843
  }
8814
- if (message.maxHeight !== 0) {
8815
- obj.maxHeight = Math.round(message.maxHeight);
8844
+ if (message.timeoutMs !== 0) {
8845
+ obj.timeoutMs = Math.round(message.timeoutMs);
8816
8846
  }
8817
- if (message.everyNthFrame !== 0) {
8818
- obj.everyNthFrame = Math.round(message.everyNthFrame);
8847
+ if (message.maxResponseBytes !== "0") {
8848
+ obj.maxResponseBytes = message.maxResponseBytes;
8819
8849
  }
8820
8850
  return obj;
8821
8851
  },
8822
8852
 
8823
- create<I extends Exact<DeepPartial<BrowserFramesOpenRequest>, I>>(base?: I): BrowserFramesOpenRequest {
8824
- return BrowserFramesOpenRequest.fromPartial(base ?? ({} as any));
8853
+ create<I extends Exact<DeepPartial<BrowserControlHttpRequest>, I>>(base?: I): BrowserControlHttpRequest {
8854
+ return BrowserControlHttpRequest.fromPartial(base ?? ({} as any));
8825
8855
  },
8826
- fromPartial<I extends Exact<DeepPartial<BrowserFramesOpenRequest>, I>>(object: I): BrowserFramesOpenRequest {
8827
- const message = createBaseBrowserFramesOpenRequest();
8856
+ fromPartial<I extends Exact<DeepPartial<BrowserControlHttpRequest>, I>>(object: I): BrowserControlHttpRequest {
8857
+ const message = createBaseBrowserControlHttpRequest();
8828
8858
  message.scopeId = object.scopeId ?? "";
8829
8859
  message.scopeGeneration = object.scopeGeneration ?? "";
8830
- message.browserSessionId = object.browserSessionId ?? "";
8831
- message.controllerGeneration = object.controllerGeneration ?? "";
8832
- message.targetId = object.targetId ?? "";
8833
- message.viewToken = object.viewToken ?? "";
8834
- message.expiresAtMs = object.expiresAtMs ?? "0";
8835
- message.format = object.format ?? "";
8836
- message.quality = object.quality ?? 0;
8837
- message.maxWidth = object.maxWidth ?? 0;
8838
- message.maxHeight = object.maxHeight ?? 0;
8839
- message.everyNthFrame = object.everyNthFrame ?? 0;
8860
+ message.method = object.method ?? "";
8861
+ message.path = object.path ?? "";
8862
+ message.bearerToken = object.bearerToken ?? "";
8863
+ message.body = object.body ?? new Uint8Array(0);
8864
+ message.hasBody = object.hasBody ?? false;
8865
+ message.timeoutMs = object.timeoutMs ?? 0;
8866
+ message.maxResponseBytes = object.maxResponseBytes ?? "0";
8840
8867
  return message;
8841
8868
  },
8842
8869
  };
8843
8870
 
8844
- function createBaseBrowserFramesOpenResponse(): BrowserFramesOpenResponse {
8845
- return { channel: undefined };
8871
+ function createBaseBrowserControlHttpHeader(): BrowserControlHttpHeader {
8872
+ return { name: "", value: "" };
8846
8873
  }
8847
8874
 
8848
- export const BrowserFramesOpenResponse: MessageFns<BrowserFramesOpenResponse> = {
8849
- encode(message: BrowserFramesOpenResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
8850
- if (message.channel !== undefined) {
8851
- StreamChannel.encode(message.channel, writer.uint32(10).fork()).join();
8875
+ export const BrowserControlHttpHeader: MessageFns<BrowserControlHttpHeader> = {
8876
+ encode(message: BrowserControlHttpHeader, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
8877
+ if (message.name !== "") {
8878
+ writer.uint32(10).string(message.name);
8879
+ }
8880
+ if (message.value !== "") {
8881
+ writer.uint32(18).string(message.value);
8852
8882
  }
8853
8883
  return writer;
8854
8884
  },
8855
8885
 
8856
- decode(input: BinaryReader | Uint8Array, length?: number): BrowserFramesOpenResponse {
8886
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserControlHttpHeader {
8857
8887
  const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
8858
8888
  const end = length === undefined ? reader.len : reader.pos + length;
8859
- const message = createBaseBrowserFramesOpenResponse();
8889
+ const message = createBaseBrowserControlHttpHeader();
8860
8890
  while (reader.pos < end) {
8861
8891
  const tag = reader.uint32();
8862
8892
  switch (tag >>> 3) {
@@ -8865,7 +8895,15 @@ export const BrowserFramesOpenResponse: MessageFns<BrowserFramesOpenResponse> =
8865
8895
  break;
8866
8896
  }
8867
8897
 
8868
- message.channel = StreamChannel.decode(reader, reader.uint32());
8898
+ message.name = reader.string();
8899
+ continue;
8900
+ }
8901
+ case 2: {
8902
+ if (tag !== 18) {
8903
+ break;
8904
+ }
8905
+
8906
+ message.value = reader.string();
8869
8907
  continue;
8870
8908
  }
8871
8909
  }
@@ -8877,35 +8915,683 @@ export const BrowserFramesOpenResponse: MessageFns<BrowserFramesOpenResponse> =
8877
8915
  return message;
8878
8916
  },
8879
8917
 
8880
- fromJSON(object: any): BrowserFramesOpenResponse {
8881
- return { channel: isSet(object.channel) ? StreamChannel.fromJSON(object.channel) : undefined };
8918
+ fromJSON(object: any): BrowserControlHttpHeader {
8919
+ return {
8920
+ name: isSet(object.name) ? globalThis.String(object.name) : "",
8921
+ value: isSet(object.value) ? globalThis.String(object.value) : "",
8922
+ };
8882
8923
  },
8883
8924
 
8884
- toJSON(message: BrowserFramesOpenResponse): unknown {
8925
+ toJSON(message: BrowserControlHttpHeader): unknown {
8885
8926
  const obj: any = {};
8886
- if (message.channel !== undefined) {
8887
- obj.channel = StreamChannel.toJSON(message.channel);
8927
+ if (message.name !== "") {
8928
+ obj.name = message.name;
8929
+ }
8930
+ if (message.value !== "") {
8931
+ obj.value = message.value;
8888
8932
  }
8889
8933
  return obj;
8890
8934
  },
8891
8935
 
8892
- create<I extends Exact<DeepPartial<BrowserFramesOpenResponse>, I>>(base?: I): BrowserFramesOpenResponse {
8893
- return BrowserFramesOpenResponse.fromPartial(base ?? ({} as any));
8936
+ create<I extends Exact<DeepPartial<BrowserControlHttpHeader>, I>>(base?: I): BrowserControlHttpHeader {
8937
+ return BrowserControlHttpHeader.fromPartial(base ?? ({} as any));
8894
8938
  },
8895
- fromPartial<I extends Exact<DeepPartial<BrowserFramesOpenResponse>, I>>(object: I): BrowserFramesOpenResponse {
8896
- const message = createBaseBrowserFramesOpenResponse();
8897
- message.channel = (object.channel !== undefined && object.channel !== null)
8898
- ? StreamChannel.fromPartial(object.channel)
8899
- : undefined;
8939
+ fromPartial<I extends Exact<DeepPartial<BrowserControlHttpHeader>, I>>(object: I): BrowserControlHttpHeader {
8940
+ const message = createBaseBrowserControlHttpHeader();
8941
+ message.name = object.name ?? "";
8942
+ message.value = object.value ?? "";
8900
8943
  return message;
8901
8944
  },
8902
8945
  };
8903
8946
 
8904
- function createBaseComputerFramesOpenRequest(): ComputerFramesOpenRequest {
8905
- return {
8906
- scopeId: "",
8907
- scopeGeneration: "",
8908
- computerSessionId: "",
8947
+ function createBaseBrowserControlHttpResponse(): BrowserControlHttpResponse {
8948
+ return { status: 0, headers: [], body: new Uint8Array(0), totalBytes: "0", spoolId: "" };
8949
+ }
8950
+
8951
+ export const BrowserControlHttpResponse: MessageFns<BrowserControlHttpResponse> = {
8952
+ encode(message: BrowserControlHttpResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
8953
+ if (message.status !== 0) {
8954
+ writer.uint32(8).uint32(message.status);
8955
+ }
8956
+ for (const v of message.headers) {
8957
+ BrowserControlHttpHeader.encode(v!, writer.uint32(18).fork()).join();
8958
+ }
8959
+ if (message.body.length !== 0) {
8960
+ writer.uint32(26).bytes(message.body);
8961
+ }
8962
+ if (message.totalBytes !== "0") {
8963
+ writer.uint32(32).uint64(message.totalBytes);
8964
+ }
8965
+ if (message.spoolId !== "") {
8966
+ writer.uint32(42).string(message.spoolId);
8967
+ }
8968
+ return writer;
8969
+ },
8970
+
8971
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserControlHttpResponse {
8972
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
8973
+ const end = length === undefined ? reader.len : reader.pos + length;
8974
+ const message = createBaseBrowserControlHttpResponse();
8975
+ while (reader.pos < end) {
8976
+ const tag = reader.uint32();
8977
+ switch (tag >>> 3) {
8978
+ case 1: {
8979
+ if (tag !== 8) {
8980
+ break;
8981
+ }
8982
+
8983
+ message.status = reader.uint32();
8984
+ continue;
8985
+ }
8986
+ case 2: {
8987
+ if (tag !== 18) {
8988
+ break;
8989
+ }
8990
+
8991
+ message.headers.push(BrowserControlHttpHeader.decode(reader, reader.uint32()));
8992
+ continue;
8993
+ }
8994
+ case 3: {
8995
+ if (tag !== 26) {
8996
+ break;
8997
+ }
8998
+
8999
+ message.body = reader.bytes();
9000
+ continue;
9001
+ }
9002
+ case 4: {
9003
+ if (tag !== 32) {
9004
+ break;
9005
+ }
9006
+
9007
+ message.totalBytes = reader.uint64().toString();
9008
+ continue;
9009
+ }
9010
+ case 5: {
9011
+ if (tag !== 42) {
9012
+ break;
9013
+ }
9014
+
9015
+ message.spoolId = reader.string();
9016
+ continue;
9017
+ }
9018
+ }
9019
+ if ((tag & 7) === 4 || tag === 0) {
9020
+ break;
9021
+ }
9022
+ reader.skip(tag & 7);
9023
+ }
9024
+ return message;
9025
+ },
9026
+
9027
+ fromJSON(object: any): BrowserControlHttpResponse {
9028
+ return {
9029
+ status: isSet(object.status) ? globalThis.Number(object.status) : 0,
9030
+ headers: globalThis.Array.isArray(object?.headers)
9031
+ ? object.headers.map((e: any) => BrowserControlHttpHeader.fromJSON(e))
9032
+ : [],
9033
+ body: isSet(object.body) ? bytesFromBase64(object.body) : new Uint8Array(0),
9034
+ totalBytes: isSet(object.totalBytes)
9035
+ ? globalThis.String(object.totalBytes)
9036
+ : isSet(object.total_bytes)
9037
+ ? globalThis.String(object.total_bytes)
9038
+ : "0",
9039
+ spoolId: isSet(object.spoolId)
9040
+ ? globalThis.String(object.spoolId)
9041
+ : isSet(object.spool_id)
9042
+ ? globalThis.String(object.spool_id)
9043
+ : "",
9044
+ };
9045
+ },
9046
+
9047
+ toJSON(message: BrowserControlHttpResponse): unknown {
9048
+ const obj: any = {};
9049
+ if (message.status !== 0) {
9050
+ obj.status = Math.round(message.status);
9051
+ }
9052
+ if (message.headers?.length) {
9053
+ obj.headers = message.headers.map((e) => BrowserControlHttpHeader.toJSON(e));
9054
+ }
9055
+ if (message.body.length !== 0) {
9056
+ obj.body = base64FromBytes(message.body);
9057
+ }
9058
+ if (message.totalBytes !== "0") {
9059
+ obj.totalBytes = message.totalBytes;
9060
+ }
9061
+ if (message.spoolId !== "") {
9062
+ obj.spoolId = message.spoolId;
9063
+ }
9064
+ return obj;
9065
+ },
9066
+
9067
+ create<I extends Exact<DeepPartial<BrowserControlHttpResponse>, I>>(base?: I): BrowserControlHttpResponse {
9068
+ return BrowserControlHttpResponse.fromPartial(base ?? ({} as any));
9069
+ },
9070
+ fromPartial<I extends Exact<DeepPartial<BrowserControlHttpResponse>, I>>(object: I): BrowserControlHttpResponse {
9071
+ const message = createBaseBrowserControlHttpResponse();
9072
+ message.status = object.status ?? 0;
9073
+ message.headers = object.headers?.map((e) => BrowserControlHttpHeader.fromPartial(e)) || [];
9074
+ message.body = object.body ?? new Uint8Array(0);
9075
+ message.totalBytes = object.totalBytes ?? "0";
9076
+ message.spoolId = object.spoolId ?? "";
9077
+ return message;
9078
+ },
9079
+ };
9080
+
9081
+ function createBaseBrowserControlHttpReadRequest(): BrowserControlHttpReadRequest {
9082
+ return { spoolId: "", offset: "0" };
9083
+ }
9084
+
9085
+ export const BrowserControlHttpReadRequest: MessageFns<BrowserControlHttpReadRequest> = {
9086
+ encode(message: BrowserControlHttpReadRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
9087
+ if (message.spoolId !== "") {
9088
+ writer.uint32(10).string(message.spoolId);
9089
+ }
9090
+ if (message.offset !== "0") {
9091
+ writer.uint32(16).uint64(message.offset);
9092
+ }
9093
+ return writer;
9094
+ },
9095
+
9096
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserControlHttpReadRequest {
9097
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
9098
+ const end = length === undefined ? reader.len : reader.pos + length;
9099
+ const message = createBaseBrowserControlHttpReadRequest();
9100
+ while (reader.pos < end) {
9101
+ const tag = reader.uint32();
9102
+ switch (tag >>> 3) {
9103
+ case 1: {
9104
+ if (tag !== 10) {
9105
+ break;
9106
+ }
9107
+
9108
+ message.spoolId = reader.string();
9109
+ continue;
9110
+ }
9111
+ case 2: {
9112
+ if (tag !== 16) {
9113
+ break;
9114
+ }
9115
+
9116
+ message.offset = reader.uint64().toString();
9117
+ continue;
9118
+ }
9119
+ }
9120
+ if ((tag & 7) === 4 || tag === 0) {
9121
+ break;
9122
+ }
9123
+ reader.skip(tag & 7);
9124
+ }
9125
+ return message;
9126
+ },
9127
+
9128
+ fromJSON(object: any): BrowserControlHttpReadRequest {
9129
+ return {
9130
+ spoolId: isSet(object.spoolId)
9131
+ ? globalThis.String(object.spoolId)
9132
+ : isSet(object.spool_id)
9133
+ ? globalThis.String(object.spool_id)
9134
+ : "",
9135
+ offset: isSet(object.offset) ? globalThis.String(object.offset) : "0",
9136
+ };
9137
+ },
9138
+
9139
+ toJSON(message: BrowserControlHttpReadRequest): unknown {
9140
+ const obj: any = {};
9141
+ if (message.spoolId !== "") {
9142
+ obj.spoolId = message.spoolId;
9143
+ }
9144
+ if (message.offset !== "0") {
9145
+ obj.offset = message.offset;
9146
+ }
9147
+ return obj;
9148
+ },
9149
+
9150
+ create<I extends Exact<DeepPartial<BrowserControlHttpReadRequest>, I>>(base?: I): BrowserControlHttpReadRequest {
9151
+ return BrowserControlHttpReadRequest.fromPartial(base ?? ({} as any));
9152
+ },
9153
+ fromPartial<I extends Exact<DeepPartial<BrowserControlHttpReadRequest>, I>>(
9154
+ object: I,
9155
+ ): BrowserControlHttpReadRequest {
9156
+ const message = createBaseBrowserControlHttpReadRequest();
9157
+ message.spoolId = object.spoolId ?? "";
9158
+ message.offset = object.offset ?? "0";
9159
+ return message;
9160
+ },
9161
+ };
9162
+
9163
+ function createBaseBrowserControlHttpReadResponse(): BrowserControlHttpReadResponse {
9164
+ return { data: new Uint8Array(0), done: false };
9165
+ }
9166
+
9167
+ export const BrowserControlHttpReadResponse: MessageFns<BrowserControlHttpReadResponse> = {
9168
+ encode(message: BrowserControlHttpReadResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
9169
+ if (message.data.length !== 0) {
9170
+ writer.uint32(10).bytes(message.data);
9171
+ }
9172
+ if (message.done !== false) {
9173
+ writer.uint32(16).bool(message.done);
9174
+ }
9175
+ return writer;
9176
+ },
9177
+
9178
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserControlHttpReadResponse {
9179
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
9180
+ const end = length === undefined ? reader.len : reader.pos + length;
9181
+ const message = createBaseBrowserControlHttpReadResponse();
9182
+ while (reader.pos < end) {
9183
+ const tag = reader.uint32();
9184
+ switch (tag >>> 3) {
9185
+ case 1: {
9186
+ if (tag !== 10) {
9187
+ break;
9188
+ }
9189
+
9190
+ message.data = reader.bytes();
9191
+ continue;
9192
+ }
9193
+ case 2: {
9194
+ if (tag !== 16) {
9195
+ break;
9196
+ }
9197
+
9198
+ message.done = reader.bool();
9199
+ continue;
9200
+ }
9201
+ }
9202
+ if ((tag & 7) === 4 || tag === 0) {
9203
+ break;
9204
+ }
9205
+ reader.skip(tag & 7);
9206
+ }
9207
+ return message;
9208
+ },
9209
+
9210
+ fromJSON(object: any): BrowserControlHttpReadResponse {
9211
+ return {
9212
+ data: isSet(object.data) ? bytesFromBase64(object.data) : new Uint8Array(0),
9213
+ done: isSet(object.done) ? globalThis.Boolean(object.done) : false,
9214
+ };
9215
+ },
9216
+
9217
+ toJSON(message: BrowserControlHttpReadResponse): unknown {
9218
+ const obj: any = {};
9219
+ if (message.data.length !== 0) {
9220
+ obj.data = base64FromBytes(message.data);
9221
+ }
9222
+ if (message.done !== false) {
9223
+ obj.done = message.done;
9224
+ }
9225
+ return obj;
9226
+ },
9227
+
9228
+ create<I extends Exact<DeepPartial<BrowserControlHttpReadResponse>, I>>(base?: I): BrowserControlHttpReadResponse {
9229
+ return BrowserControlHttpReadResponse.fromPartial(base ?? ({} as any));
9230
+ },
9231
+ fromPartial<I extends Exact<DeepPartial<BrowserControlHttpReadResponse>, I>>(
9232
+ object: I,
9233
+ ): BrowserControlHttpReadResponse {
9234
+ const message = createBaseBrowserControlHttpReadResponse();
9235
+ message.data = object.data ?? new Uint8Array(0);
9236
+ message.done = object.done ?? false;
9237
+ return message;
9238
+ },
9239
+ };
9240
+
9241
+ function createBaseBrowserFramesOpenRequest(): BrowserFramesOpenRequest {
9242
+ return {
9243
+ scopeId: "",
9244
+ scopeGeneration: "",
9245
+ browserSessionId: "",
9246
+ controllerGeneration: "",
9247
+ targetId: "",
9248
+ viewToken: "",
9249
+ expiresAtMs: "0",
9250
+ format: "",
9251
+ quality: 0,
9252
+ maxWidth: 0,
9253
+ maxHeight: 0,
9254
+ everyNthFrame: 0,
9255
+ };
9256
+ }
9257
+
9258
+ export const BrowserFramesOpenRequest: MessageFns<BrowserFramesOpenRequest> = {
9259
+ encode(message: BrowserFramesOpenRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
9260
+ if (message.scopeId !== "") {
9261
+ writer.uint32(10).string(message.scopeId);
9262
+ }
9263
+ if (message.scopeGeneration !== "") {
9264
+ writer.uint32(18).string(message.scopeGeneration);
9265
+ }
9266
+ if (message.browserSessionId !== "") {
9267
+ writer.uint32(26).string(message.browserSessionId);
9268
+ }
9269
+ if (message.controllerGeneration !== "") {
9270
+ writer.uint32(34).string(message.controllerGeneration);
9271
+ }
9272
+ if (message.targetId !== "") {
9273
+ writer.uint32(42).string(message.targetId);
9274
+ }
9275
+ if (message.viewToken !== "") {
9276
+ writer.uint32(50).string(message.viewToken);
9277
+ }
9278
+ if (message.expiresAtMs !== "0") {
9279
+ writer.uint32(56).int64(message.expiresAtMs);
9280
+ }
9281
+ if (message.format !== "") {
9282
+ writer.uint32(66).string(message.format);
9283
+ }
9284
+ if (message.quality !== 0) {
9285
+ writer.uint32(72).uint32(message.quality);
9286
+ }
9287
+ if (message.maxWidth !== 0) {
9288
+ writer.uint32(80).uint32(message.maxWidth);
9289
+ }
9290
+ if (message.maxHeight !== 0) {
9291
+ writer.uint32(88).uint32(message.maxHeight);
9292
+ }
9293
+ if (message.everyNthFrame !== 0) {
9294
+ writer.uint32(96).uint32(message.everyNthFrame);
9295
+ }
9296
+ return writer;
9297
+ },
9298
+
9299
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserFramesOpenRequest {
9300
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
9301
+ const end = length === undefined ? reader.len : reader.pos + length;
9302
+ const message = createBaseBrowserFramesOpenRequest();
9303
+ while (reader.pos < end) {
9304
+ const tag = reader.uint32();
9305
+ switch (tag >>> 3) {
9306
+ case 1: {
9307
+ if (tag !== 10) {
9308
+ break;
9309
+ }
9310
+
9311
+ message.scopeId = reader.string();
9312
+ continue;
9313
+ }
9314
+ case 2: {
9315
+ if (tag !== 18) {
9316
+ break;
9317
+ }
9318
+
9319
+ message.scopeGeneration = reader.string();
9320
+ continue;
9321
+ }
9322
+ case 3: {
9323
+ if (tag !== 26) {
9324
+ break;
9325
+ }
9326
+
9327
+ message.browserSessionId = reader.string();
9328
+ continue;
9329
+ }
9330
+ case 4: {
9331
+ if (tag !== 34) {
9332
+ break;
9333
+ }
9334
+
9335
+ message.controllerGeneration = reader.string();
9336
+ continue;
9337
+ }
9338
+ case 5: {
9339
+ if (tag !== 42) {
9340
+ break;
9341
+ }
9342
+
9343
+ message.targetId = reader.string();
9344
+ continue;
9345
+ }
9346
+ case 6: {
9347
+ if (tag !== 50) {
9348
+ break;
9349
+ }
9350
+
9351
+ message.viewToken = reader.string();
9352
+ continue;
9353
+ }
9354
+ case 7: {
9355
+ if (tag !== 56) {
9356
+ break;
9357
+ }
9358
+
9359
+ message.expiresAtMs = reader.int64().toString();
9360
+ continue;
9361
+ }
9362
+ case 8: {
9363
+ if (tag !== 66) {
9364
+ break;
9365
+ }
9366
+
9367
+ message.format = reader.string();
9368
+ continue;
9369
+ }
9370
+ case 9: {
9371
+ if (tag !== 72) {
9372
+ break;
9373
+ }
9374
+
9375
+ message.quality = reader.uint32();
9376
+ continue;
9377
+ }
9378
+ case 10: {
9379
+ if (tag !== 80) {
9380
+ break;
9381
+ }
9382
+
9383
+ message.maxWidth = reader.uint32();
9384
+ continue;
9385
+ }
9386
+ case 11: {
9387
+ if (tag !== 88) {
9388
+ break;
9389
+ }
9390
+
9391
+ message.maxHeight = reader.uint32();
9392
+ continue;
9393
+ }
9394
+ case 12: {
9395
+ if (tag !== 96) {
9396
+ break;
9397
+ }
9398
+
9399
+ message.everyNthFrame = reader.uint32();
9400
+ continue;
9401
+ }
9402
+ }
9403
+ if ((tag & 7) === 4 || tag === 0) {
9404
+ break;
9405
+ }
9406
+ reader.skip(tag & 7);
9407
+ }
9408
+ return message;
9409
+ },
9410
+
9411
+ fromJSON(object: any): BrowserFramesOpenRequest {
9412
+ return {
9413
+ scopeId: isSet(object.scopeId)
9414
+ ? globalThis.String(object.scopeId)
9415
+ : isSet(object.scope_id)
9416
+ ? globalThis.String(object.scope_id)
9417
+ : "",
9418
+ scopeGeneration: isSet(object.scopeGeneration)
9419
+ ? globalThis.String(object.scopeGeneration)
9420
+ : isSet(object.scope_generation)
9421
+ ? globalThis.String(object.scope_generation)
9422
+ : "",
9423
+ browserSessionId: isSet(object.browserSessionId)
9424
+ ? globalThis.String(object.browserSessionId)
9425
+ : isSet(object.browser_session_id)
9426
+ ? globalThis.String(object.browser_session_id)
9427
+ : "",
9428
+ controllerGeneration: isSet(object.controllerGeneration)
9429
+ ? globalThis.String(object.controllerGeneration)
9430
+ : isSet(object.controller_generation)
9431
+ ? globalThis.String(object.controller_generation)
9432
+ : "",
9433
+ targetId: isSet(object.targetId)
9434
+ ? globalThis.String(object.targetId)
9435
+ : isSet(object.target_id)
9436
+ ? globalThis.String(object.target_id)
9437
+ : "",
9438
+ viewToken: isSet(object.viewToken)
9439
+ ? globalThis.String(object.viewToken)
9440
+ : isSet(object.view_token)
9441
+ ? globalThis.String(object.view_token)
9442
+ : "",
9443
+ expiresAtMs: isSet(object.expiresAtMs)
9444
+ ? globalThis.String(object.expiresAtMs)
9445
+ : isSet(object.expires_at_ms)
9446
+ ? globalThis.String(object.expires_at_ms)
9447
+ : "0",
9448
+ format: isSet(object.format) ? globalThis.String(object.format) : "",
9449
+ quality: isSet(object.quality) ? globalThis.Number(object.quality) : 0,
9450
+ maxWidth: isSet(object.maxWidth)
9451
+ ? globalThis.Number(object.maxWidth)
9452
+ : isSet(object.max_width)
9453
+ ? globalThis.Number(object.max_width)
9454
+ : 0,
9455
+ maxHeight: isSet(object.maxHeight)
9456
+ ? globalThis.Number(object.maxHeight)
9457
+ : isSet(object.max_height)
9458
+ ? globalThis.Number(object.max_height)
9459
+ : 0,
9460
+ everyNthFrame: isSet(object.everyNthFrame)
9461
+ ? globalThis.Number(object.everyNthFrame)
9462
+ : isSet(object.every_nth_frame)
9463
+ ? globalThis.Number(object.every_nth_frame)
9464
+ : 0,
9465
+ };
9466
+ },
9467
+
9468
+ toJSON(message: BrowserFramesOpenRequest): unknown {
9469
+ const obj: any = {};
9470
+ if (message.scopeId !== "") {
9471
+ obj.scopeId = message.scopeId;
9472
+ }
9473
+ if (message.scopeGeneration !== "") {
9474
+ obj.scopeGeneration = message.scopeGeneration;
9475
+ }
9476
+ if (message.browserSessionId !== "") {
9477
+ obj.browserSessionId = message.browserSessionId;
9478
+ }
9479
+ if (message.controllerGeneration !== "") {
9480
+ obj.controllerGeneration = message.controllerGeneration;
9481
+ }
9482
+ if (message.targetId !== "") {
9483
+ obj.targetId = message.targetId;
9484
+ }
9485
+ if (message.viewToken !== "") {
9486
+ obj.viewToken = message.viewToken;
9487
+ }
9488
+ if (message.expiresAtMs !== "0") {
9489
+ obj.expiresAtMs = message.expiresAtMs;
9490
+ }
9491
+ if (message.format !== "") {
9492
+ obj.format = message.format;
9493
+ }
9494
+ if (message.quality !== 0) {
9495
+ obj.quality = Math.round(message.quality);
9496
+ }
9497
+ if (message.maxWidth !== 0) {
9498
+ obj.maxWidth = Math.round(message.maxWidth);
9499
+ }
9500
+ if (message.maxHeight !== 0) {
9501
+ obj.maxHeight = Math.round(message.maxHeight);
9502
+ }
9503
+ if (message.everyNthFrame !== 0) {
9504
+ obj.everyNthFrame = Math.round(message.everyNthFrame);
9505
+ }
9506
+ return obj;
9507
+ },
9508
+
9509
+ create<I extends Exact<DeepPartial<BrowserFramesOpenRequest>, I>>(base?: I): BrowserFramesOpenRequest {
9510
+ return BrowserFramesOpenRequest.fromPartial(base ?? ({} as any));
9511
+ },
9512
+ fromPartial<I extends Exact<DeepPartial<BrowserFramesOpenRequest>, I>>(object: I): BrowserFramesOpenRequest {
9513
+ const message = createBaseBrowserFramesOpenRequest();
9514
+ message.scopeId = object.scopeId ?? "";
9515
+ message.scopeGeneration = object.scopeGeneration ?? "";
9516
+ message.browserSessionId = object.browserSessionId ?? "";
9517
+ message.controllerGeneration = object.controllerGeneration ?? "";
9518
+ message.targetId = object.targetId ?? "";
9519
+ message.viewToken = object.viewToken ?? "";
9520
+ message.expiresAtMs = object.expiresAtMs ?? "0";
9521
+ message.format = object.format ?? "";
9522
+ message.quality = object.quality ?? 0;
9523
+ message.maxWidth = object.maxWidth ?? 0;
9524
+ message.maxHeight = object.maxHeight ?? 0;
9525
+ message.everyNthFrame = object.everyNthFrame ?? 0;
9526
+ return message;
9527
+ },
9528
+ };
9529
+
9530
+ function createBaseBrowserFramesOpenResponse(): BrowserFramesOpenResponse {
9531
+ return { channel: undefined };
9532
+ }
9533
+
9534
+ export const BrowserFramesOpenResponse: MessageFns<BrowserFramesOpenResponse> = {
9535
+ encode(message: BrowserFramesOpenResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
9536
+ if (message.channel !== undefined) {
9537
+ StreamChannel.encode(message.channel, writer.uint32(10).fork()).join();
9538
+ }
9539
+ return writer;
9540
+ },
9541
+
9542
+ decode(input: BinaryReader | Uint8Array, length?: number): BrowserFramesOpenResponse {
9543
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
9544
+ const end = length === undefined ? reader.len : reader.pos + length;
9545
+ const message = createBaseBrowserFramesOpenResponse();
9546
+ while (reader.pos < end) {
9547
+ const tag = reader.uint32();
9548
+ switch (tag >>> 3) {
9549
+ case 1: {
9550
+ if (tag !== 10) {
9551
+ break;
9552
+ }
9553
+
9554
+ message.channel = StreamChannel.decode(reader, reader.uint32());
9555
+ continue;
9556
+ }
9557
+ }
9558
+ if ((tag & 7) === 4 || tag === 0) {
9559
+ break;
9560
+ }
9561
+ reader.skip(tag & 7);
9562
+ }
9563
+ return message;
9564
+ },
9565
+
9566
+ fromJSON(object: any): BrowserFramesOpenResponse {
9567
+ return { channel: isSet(object.channel) ? StreamChannel.fromJSON(object.channel) : undefined };
9568
+ },
9569
+
9570
+ toJSON(message: BrowserFramesOpenResponse): unknown {
9571
+ const obj: any = {};
9572
+ if (message.channel !== undefined) {
9573
+ obj.channel = StreamChannel.toJSON(message.channel);
9574
+ }
9575
+ return obj;
9576
+ },
9577
+
9578
+ create<I extends Exact<DeepPartial<BrowserFramesOpenResponse>, I>>(base?: I): BrowserFramesOpenResponse {
9579
+ return BrowserFramesOpenResponse.fromPartial(base ?? ({} as any));
9580
+ },
9581
+ fromPartial<I extends Exact<DeepPartial<BrowserFramesOpenResponse>, I>>(object: I): BrowserFramesOpenResponse {
9582
+ const message = createBaseBrowserFramesOpenResponse();
9583
+ message.channel = (object.channel !== undefined && object.channel !== null)
9584
+ ? StreamChannel.fromPartial(object.channel)
9585
+ : undefined;
9586
+ return message;
9587
+ },
9588
+ };
9589
+
9590
+ function createBaseComputerFramesOpenRequest(): ComputerFramesOpenRequest {
9591
+ return {
9592
+ scopeId: "",
9593
+ scopeGeneration: "",
9594
+ computerSessionId: "",
8909
9595
  controllerGeneration: "",
8910
9596
  targetId: "",
8911
9597
  viewToken: "",
@@ -14211,6 +14897,12 @@ export const ControlRequest: MessageFns<ControlRequest> = {
14211
14897
  case "credentialRenew":
14212
14898
  CredentialRenewRequest.encode(message.op.credentialRenew, writer.uint32(322).fork()).join();
14213
14899
  break;
14900
+ case "browserControlHttp":
14901
+ BrowserControlHttpRequest.encode(message.op.browserControlHttp, writer.uint32(330).fork()).join();
14902
+ break;
14903
+ case "browserControlHttpRead":
14904
+ BrowserControlHttpReadRequest.encode(message.op.browserControlHttpRead, writer.uint32(338).fork()).join();
14905
+ break;
14214
14906
  }
14215
14907
  return writer;
14216
14908
  },
@@ -14507,6 +15199,28 @@ export const ControlRequest: MessageFns<ControlRequest> = {
14507
15199
  };
14508
15200
  continue;
14509
15201
  }
15202
+ case 41: {
15203
+ if (tag !== 330) {
15204
+ break;
15205
+ }
15206
+
15207
+ message.op = {
15208
+ $case: "browserControlHttp",
15209
+ browserControlHttp: BrowserControlHttpRequest.decode(reader, reader.uint32()),
15210
+ };
15211
+ continue;
15212
+ }
15213
+ case 42: {
15214
+ if (tag !== 338) {
15215
+ break;
15216
+ }
15217
+
15218
+ message.op = {
15219
+ $case: "browserControlHttpRead",
15220
+ browserControlHttpRead: BrowserControlHttpReadRequest.decode(reader, reader.uint32()),
15221
+ };
15222
+ continue;
15223
+ }
14510
15224
  }
14511
15225
  if ((tag & 7) === 4 || tag === 0) {
14512
15226
  break;
@@ -14657,6 +15371,26 @@ export const ControlRequest: MessageFns<ControlRequest> = {
14657
15371
  ? { $case: "credentialRenew", credentialRenew: CredentialRenewRequest.fromJSON(object.credentialRenew) }
14658
15372
  : isSet(object.credential_renew)
14659
15373
  ? { $case: "credentialRenew", credentialRenew: CredentialRenewRequest.fromJSON(object.credential_renew) }
15374
+ : isSet(object.browserControlHttp)
15375
+ ? {
15376
+ $case: "browserControlHttp",
15377
+ browserControlHttp: BrowserControlHttpRequest.fromJSON(object.browserControlHttp),
15378
+ }
15379
+ : isSet(object.browser_control_http)
15380
+ ? {
15381
+ $case: "browserControlHttp",
15382
+ browserControlHttp: BrowserControlHttpRequest.fromJSON(object.browser_control_http),
15383
+ }
15384
+ : isSet(object.browserControlHttpRead)
15385
+ ? {
15386
+ $case: "browserControlHttpRead",
15387
+ browserControlHttpRead: BrowserControlHttpReadRequest.fromJSON(object.browserControlHttpRead),
15388
+ }
15389
+ : isSet(object.browser_control_http_read)
15390
+ ? {
15391
+ $case: "browserControlHttpRead",
15392
+ browserControlHttpRead: BrowserControlHttpReadRequest.fromJSON(object.browser_control_http_read),
15393
+ }
14660
15394
  : undefined,
14661
15395
  };
14662
15396
  },
@@ -14732,6 +15466,10 @@ export const ControlRequest: MessageFns<ControlRequest> = {
14732
15466
  obj.agentUpdateApply = AgentUpdateApplyRequest.toJSON(message.op.agentUpdateApply);
14733
15467
  } else if (message.op?.$case === "credentialRenew") {
14734
15468
  obj.credentialRenew = CredentialRenewRequest.toJSON(message.op.credentialRenew);
15469
+ } else if (message.op?.$case === "browserControlHttp") {
15470
+ obj.browserControlHttp = BrowserControlHttpRequest.toJSON(message.op.browserControlHttp);
15471
+ } else if (message.op?.$case === "browserControlHttpRead") {
15472
+ obj.browserControlHttpRead = BrowserControlHttpReadRequest.toJSON(message.op.browserControlHttpRead);
14735
15473
  }
14736
15474
  return obj;
14737
15475
  },
@@ -14951,6 +15689,24 @@ export const ControlRequest: MessageFns<ControlRequest> = {
14951
15689
  }
14952
15690
  break;
14953
15691
  }
15692
+ case "browserControlHttp": {
15693
+ if (object.op?.browserControlHttp !== undefined && object.op?.browserControlHttp !== null) {
15694
+ message.op = {
15695
+ $case: "browserControlHttp",
15696
+ browserControlHttp: BrowserControlHttpRequest.fromPartial(object.op.browserControlHttp),
15697
+ };
15698
+ }
15699
+ break;
15700
+ }
15701
+ case "browserControlHttpRead": {
15702
+ if (object.op?.browserControlHttpRead !== undefined && object.op?.browserControlHttpRead !== null) {
15703
+ message.op = {
15704
+ $case: "browserControlHttpRead",
15705
+ browserControlHttpRead: BrowserControlHttpReadRequest.fromPartial(object.op.browserControlHttpRead),
15706
+ };
15707
+ }
15708
+ break;
15709
+ }
14954
15710
  }
14955
15711
  return message;
14956
15712
  },
@@ -15053,6 +15809,12 @@ export const ControlResponse: MessageFns<ControlResponse> = {
15053
15809
  case "credentialRenew":
15054
15810
  CredentialRenewResponse.encode(message.result.credentialRenew, writer.uint32(322).fork()).join();
15055
15811
  break;
15812
+ case "browserControlHttp":
15813
+ BrowserControlHttpResponse.encode(message.result.browserControlHttp, writer.uint32(330).fork()).join();
15814
+ break;
15815
+ case "browserControlHttpRead":
15816
+ BrowserControlHttpReadResponse.encode(message.result.browserControlHttpRead, writer.uint32(338).fork()).join();
15817
+ break;
15056
15818
  }
15057
15819
  return writer;
15058
15820
  },
@@ -15331,6 +16093,28 @@ export const ControlResponse: MessageFns<ControlResponse> = {
15331
16093
  };
15332
16094
  continue;
15333
16095
  }
16096
+ case 41: {
16097
+ if (tag !== 330) {
16098
+ break;
16099
+ }
16100
+
16101
+ message.result = {
16102
+ $case: "browserControlHttp",
16103
+ browserControlHttp: BrowserControlHttpResponse.decode(reader, reader.uint32()),
16104
+ };
16105
+ continue;
16106
+ }
16107
+ case 42: {
16108
+ if (tag !== 338) {
16109
+ break;
16110
+ }
16111
+
16112
+ message.result = {
16113
+ $case: "browserControlHttpRead",
16114
+ browserControlHttpRead: BrowserControlHttpReadResponse.decode(reader, reader.uint32()),
16115
+ };
16116
+ continue;
16117
+ }
15334
16118
  }
15335
16119
  if ((tag & 7) === 4 || tag === 0) {
15336
16120
  break;
@@ -15474,6 +16258,26 @@ export const ControlResponse: MessageFns<ControlResponse> = {
15474
16258
  ? { $case: "credentialRenew", credentialRenew: CredentialRenewResponse.fromJSON(object.credentialRenew) }
15475
16259
  : isSet(object.credential_renew)
15476
16260
  ? { $case: "credentialRenew", credentialRenew: CredentialRenewResponse.fromJSON(object.credential_renew) }
16261
+ : isSet(object.browserControlHttp)
16262
+ ? {
16263
+ $case: "browserControlHttp",
16264
+ browserControlHttp: BrowserControlHttpResponse.fromJSON(object.browserControlHttp),
16265
+ }
16266
+ : isSet(object.browser_control_http)
16267
+ ? {
16268
+ $case: "browserControlHttp",
16269
+ browserControlHttp: BrowserControlHttpResponse.fromJSON(object.browser_control_http),
16270
+ }
16271
+ : isSet(object.browserControlHttpRead)
16272
+ ? {
16273
+ $case: "browserControlHttpRead",
16274
+ browserControlHttpRead: BrowserControlHttpReadResponse.fromJSON(object.browserControlHttpRead),
16275
+ }
16276
+ : isSet(object.browser_control_http_read)
16277
+ ? {
16278
+ $case: "browserControlHttpRead",
16279
+ browserControlHttpRead: BrowserControlHttpReadResponse.fromJSON(object.browser_control_http_read),
16280
+ }
15477
16281
  : undefined,
15478
16282
  };
15479
16283
  },
@@ -15542,6 +16346,10 @@ export const ControlResponse: MessageFns<ControlResponse> = {
15542
16346
  obj.agentUpdateApply = AgentUpdateApplyResponse.toJSON(message.result.agentUpdateApply);
15543
16347
  } else if (message.result?.$case === "credentialRenew") {
15544
16348
  obj.credentialRenew = CredentialRenewResponse.toJSON(message.result.credentialRenew);
16349
+ } else if (message.result?.$case === "browserControlHttp") {
16350
+ obj.browserControlHttp = BrowserControlHttpResponse.toJSON(message.result.browserControlHttp);
16351
+ } else if (message.result?.$case === "browserControlHttpRead") {
16352
+ obj.browserControlHttpRead = BrowserControlHttpReadResponse.toJSON(message.result.browserControlHttpRead);
15545
16353
  }
15546
16354
  return obj;
15547
16355
  },
@@ -15751,6 +16559,24 @@ export const ControlResponse: MessageFns<ControlResponse> = {
15751
16559
  }
15752
16560
  break;
15753
16561
  }
16562
+ case "browserControlHttp": {
16563
+ if (object.result?.browserControlHttp !== undefined && object.result?.browserControlHttp !== null) {
16564
+ message.result = {
16565
+ $case: "browserControlHttp",
16566
+ browserControlHttp: BrowserControlHttpResponse.fromPartial(object.result.browserControlHttp),
16567
+ };
16568
+ }
16569
+ break;
16570
+ }
16571
+ case "browserControlHttpRead": {
16572
+ if (object.result?.browserControlHttpRead !== undefined && object.result?.browserControlHttpRead !== null) {
16573
+ message.result = {
16574
+ $case: "browserControlHttpRead",
16575
+ browserControlHttpRead: BrowserControlHttpReadResponse.fromPartial(object.result.browserControlHttpRead),
16576
+ };
16577
+ }
16578
+ break;
16579
+ }
15754
16580
  }
15755
16581
  return message;
15756
16582
  },