@airtop/sdk 0.0.8 → 0.0.10-a

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 (176) hide show
  1. package/api/index.d.ts +1 -1
  2. package/api/index.js +1 -1
  3. package/api/resources/index.d.ts +2 -1
  4. package/api/resources/index.js +3 -2
  5. package/api/resources/profiles/client/Client.js +4 -4
  6. package/api/resources/sessions/client/Client.d.ts +11 -4
  7. package/api/resources/sessions/client/Client.js +117 -13
  8. package/api/resources/sessions/client/requests/SessionsListRequest.d.ts +18 -2
  9. package/api/resources/sessions/index.d.ts +1 -0
  10. package/api/resources/sessions/index.js +1 -0
  11. package/api/resources/sessions/types/SessionsEventsResponse.d.ts +16 -0
  12. package/api/resources/sessions/types/SessionsEventsResponseError.d.ts +11 -0
  13. package/api/resources/sessions/types/SessionsEventsResponseStatus.d.ts +11 -0
  14. package/api/resources/sessions/types/SessionsEventsResponseStatus.js +5 -0
  15. package/api/resources/sessions/types/SessionsListRequestStatus.d.ts +13 -0
  16. package/api/resources/sessions/types/SessionsListRequestStatus.js +12 -0
  17. package/api/resources/sessions/types/index.d.ts +4 -0
  18. package/api/resources/sessions/types/index.js +20 -0
  19. package/api/resources/windows/client/Client.d.ts +1 -1
  20. package/api/resources/windows/client/Client.js +10 -10
  21. package/api/types/ErrorMessage.d.ts +11 -0
  22. package/api/types/ErrorMessage.js +5 -0
  23. package/api/types/ExternalProfileV1.d.ts +0 -2
  24. package/api/types/Pagination.d.ts +13 -0
  25. package/api/types/Pagination.js +5 -0
  26. package/api/types/SessionsWithPagination.d.ts +10 -0
  27. package/api/types/SessionsWithPagination.js +5 -0
  28. package/api/types/{ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.d.ts → SessionsWithPaginationEnvelopeDefaultMetaWrapper.d.ts} +2 -2
  29. package/api/types/SessionsWithPaginationEnvelopeDefaultMetaWrapper.js +5 -0
  30. package/api/types/StatusMessage.d.ts +14 -0
  31. package/api/types/StatusMessage.js +5 -0
  32. package/api/types/StatusMessageStatus.d.ts +13 -0
  33. package/api/types/StatusMessageStatus.js +12 -0
  34. package/api/types/Window.d.ts +0 -2
  35. package/api/types/index.d.ts +6 -1
  36. package/api/types/index.js +6 -1
  37. package/core/index.d.ts +1 -0
  38. package/core/index.js +1 -0
  39. package/core/streaming-fetcher/Stream.d.ts +48 -0
  40. package/core/streaming-fetcher/Stream.js +170 -0
  41. package/core/streaming-fetcher/index.d.ts +1 -0
  42. package/core/streaming-fetcher/index.js +5 -0
  43. package/dist/api/index.d.ts +1 -1
  44. package/dist/api/index.js +1 -1
  45. package/dist/api/resources/index.d.ts +2 -1
  46. package/dist/api/resources/index.js +3 -2
  47. package/dist/api/resources/profiles/client/Client.js +4 -4
  48. package/dist/api/resources/sessions/client/Client.d.ts +11 -4
  49. package/dist/api/resources/sessions/client/Client.js +117 -13
  50. package/dist/api/resources/sessions/client/requests/SessionsListRequest.d.ts +18 -2
  51. package/dist/api/resources/sessions/index.d.ts +1 -0
  52. package/dist/api/resources/sessions/index.js +1 -0
  53. package/dist/api/resources/sessions/types/SessionsEventsResponse.d.ts +16 -0
  54. package/dist/api/resources/sessions/types/SessionsEventsResponse.js +5 -0
  55. package/dist/api/resources/sessions/types/SessionsEventsResponseError.d.ts +11 -0
  56. package/dist/api/resources/sessions/types/SessionsEventsResponseError.js +5 -0
  57. package/dist/api/resources/sessions/types/SessionsEventsResponseStatus.d.ts +11 -0
  58. package/dist/api/resources/sessions/types/SessionsEventsResponseStatus.js +5 -0
  59. package/dist/api/resources/sessions/types/SessionsListRequestStatus.d.ts +13 -0
  60. package/dist/api/resources/sessions/types/SessionsListRequestStatus.js +12 -0
  61. package/dist/api/resources/sessions/types/index.d.ts +4 -0
  62. package/dist/api/resources/sessions/types/index.js +20 -0
  63. package/dist/api/resources/windows/client/Client.d.ts +1 -1
  64. package/dist/api/resources/windows/client/Client.js +10 -10
  65. package/dist/api/types/ErrorMessage.d.ts +11 -0
  66. package/dist/api/types/ErrorMessage.js +5 -0
  67. package/dist/api/types/ExternalProfileV1.d.ts +0 -2
  68. package/dist/api/types/Pagination.d.ts +13 -0
  69. package/dist/api/types/Pagination.js +5 -0
  70. package/dist/api/types/SessionsWithPagination.d.ts +10 -0
  71. package/dist/api/types/SessionsWithPagination.js +5 -0
  72. package/dist/api/types/{ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.d.ts → SessionsWithPaginationEnvelopeDefaultMetaWrapper.d.ts} +2 -2
  73. package/dist/api/types/SessionsWithPaginationEnvelopeDefaultMetaWrapper.js +5 -0
  74. package/dist/api/types/StatusMessage.d.ts +14 -0
  75. package/dist/api/types/StatusMessage.js +5 -0
  76. package/dist/api/types/StatusMessageStatus.d.ts +13 -0
  77. package/dist/api/types/StatusMessageStatus.js +12 -0
  78. package/dist/api/types/Window.d.ts +0 -2
  79. package/dist/api/types/index.d.ts +6 -1
  80. package/dist/api/types/index.js +6 -1
  81. package/dist/core/index.d.ts +1 -0
  82. package/dist/core/index.js +1 -0
  83. package/dist/core/streaming-fetcher/Stream.d.ts +48 -0
  84. package/dist/core/streaming-fetcher/Stream.js +170 -0
  85. package/dist/core/streaming-fetcher/index.d.ts +1 -0
  86. package/dist/core/streaming-fetcher/index.js +5 -0
  87. package/dist/index.d.ts +2 -1
  88. package/dist/index.js +4 -3
  89. package/dist/serialization/index.d.ts +1 -1
  90. package/dist/serialization/index.js +1 -1
  91. package/dist/serialization/resources/index.d.ts +1 -0
  92. package/dist/serialization/resources/index.js +1 -0
  93. package/dist/serialization/resources/sessions/index.d.ts +1 -0
  94. package/dist/serialization/resources/sessions/index.js +1 -0
  95. package/dist/serialization/resources/sessions/types/SessionsEventsResponse.d.ts +18 -0
  96. package/dist/serialization/resources/sessions/types/SessionsEventsResponse.js +41 -0
  97. package/dist/serialization/resources/sessions/types/SessionsEventsResponseError.d.ts +15 -0
  98. package/dist/serialization/resources/sessions/types/SessionsEventsResponseError.js +36 -0
  99. package/dist/serialization/resources/sessions/types/SessionsEventsResponseStatus.d.ts +15 -0
  100. package/dist/serialization/resources/sessions/types/SessionsEventsResponseStatus.js +36 -0
  101. package/dist/serialization/resources/sessions/types/SessionsListRequestStatus.d.ts +10 -0
  102. package/dist/serialization/resources/sessions/types/SessionsListRequestStatus.js +31 -0
  103. package/dist/serialization/resources/sessions/types/index.d.ts +4 -0
  104. package/dist/serialization/resources/sessions/types/index.js +20 -0
  105. package/dist/serialization/types/ErrorMessage.d.ts +14 -0
  106. package/dist/serialization/types/ErrorMessage.js +35 -0
  107. package/dist/serialization/types/ExternalProfileV1.d.ts +0 -1
  108. package/dist/serialization/types/ExternalProfileV1.js +0 -1
  109. package/dist/serialization/types/Pagination.d.ts +19 -0
  110. package/dist/serialization/types/Pagination.js +40 -0
  111. package/dist/serialization/types/SessionsWithPagination.d.ts +15 -0
  112. package/dist/serialization/types/SessionsWithPagination.js +36 -0
  113. package/dist/serialization/types/SessionsWithPaginationEnvelopeDefaultMetaWrapper.d.ts +18 -0
  114. package/dist/serialization/types/{ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.js → SessionsWithPaginationEnvelopeDefaultMetaWrapper.js} +4 -4
  115. package/dist/serialization/types/StatusMessage.d.ts +16 -0
  116. package/dist/serialization/types/StatusMessage.js +37 -0
  117. package/dist/serialization/types/StatusMessageStatus.d.ts +10 -0
  118. package/dist/serialization/types/StatusMessageStatus.js +31 -0
  119. package/dist/serialization/types/Window.d.ts +0 -1
  120. package/dist/serialization/types/Window.js +0 -1
  121. package/dist/serialization/types/index.d.ts +6 -1
  122. package/dist/serialization/types/index.js +6 -1
  123. package/dist/wrapper/AirtopClient.d.ts +19 -0
  124. package/dist/wrapper/AirtopClient.js +32 -0
  125. package/dist/wrapper/AirtopSessions.d.ts +24 -0
  126. package/dist/wrapper/AirtopSessions.js +93 -0
  127. package/dist/wrapper/AirtopWindows.d.ts +18 -0
  128. package/dist/wrapper/AirtopWindows.js +65 -0
  129. package/index.d.ts +2 -1
  130. package/index.js +4 -3
  131. package/package.json +7 -3
  132. package/reference.md +71 -5
  133. package/serialization/index.d.ts +1 -1
  134. package/serialization/index.js +1 -1
  135. package/serialization/resources/index.d.ts +1 -0
  136. package/serialization/resources/index.js +1 -0
  137. package/serialization/resources/sessions/index.d.ts +1 -0
  138. package/serialization/resources/sessions/index.js +1 -0
  139. package/serialization/resources/sessions/types/SessionsEventsResponse.d.ts +18 -0
  140. package/serialization/resources/sessions/types/SessionsEventsResponse.js +41 -0
  141. package/serialization/resources/sessions/types/SessionsEventsResponseError.d.ts +15 -0
  142. package/serialization/resources/sessions/types/SessionsEventsResponseError.js +36 -0
  143. package/serialization/resources/sessions/types/SessionsEventsResponseStatus.d.ts +15 -0
  144. package/serialization/resources/sessions/types/SessionsEventsResponseStatus.js +36 -0
  145. package/serialization/resources/sessions/types/SessionsListRequestStatus.d.ts +10 -0
  146. package/serialization/resources/sessions/types/SessionsListRequestStatus.js +31 -0
  147. package/serialization/resources/sessions/types/index.d.ts +4 -0
  148. package/serialization/resources/sessions/types/index.js +20 -0
  149. package/serialization/types/ErrorMessage.d.ts +14 -0
  150. package/serialization/types/ErrorMessage.js +35 -0
  151. package/serialization/types/ExternalProfileV1.d.ts +0 -1
  152. package/serialization/types/ExternalProfileV1.js +0 -1
  153. package/serialization/types/Pagination.d.ts +19 -0
  154. package/serialization/types/Pagination.js +40 -0
  155. package/serialization/types/SessionsWithPagination.d.ts +15 -0
  156. package/serialization/types/SessionsWithPagination.js +36 -0
  157. package/serialization/types/SessionsWithPaginationEnvelopeDefaultMetaWrapper.d.ts +18 -0
  158. package/serialization/types/{ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.js → SessionsWithPaginationEnvelopeDefaultMetaWrapper.js} +4 -4
  159. package/serialization/types/StatusMessage.d.ts +16 -0
  160. package/serialization/types/StatusMessage.js +37 -0
  161. package/serialization/types/StatusMessageStatus.d.ts +10 -0
  162. package/serialization/types/StatusMessageStatus.js +31 -0
  163. package/serialization/types/Window.d.ts +0 -1
  164. package/serialization/types/Window.js +0 -1
  165. package/serialization/types/index.d.ts +6 -1
  166. package/serialization/types/index.js +6 -1
  167. package/wrapper/AirtopClient.d.ts +19 -0
  168. package/wrapper/AirtopClient.js +32 -0
  169. package/wrapper/AirtopSessions.d.ts +24 -0
  170. package/wrapper/AirtopSessions.js +93 -0
  171. package/wrapper/AirtopWindows.d.ts +18 -0
  172. package/wrapper/AirtopWindows.js +65 -0
  173. package/dist/serialization/types/ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.d.ts +0 -18
  174. package/serialization/types/ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.d.ts +0 -18
  175. /package/api/{types/ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.js → resources/sessions/types/SessionsEventsResponse.js} +0 -0
  176. /package/{dist/api/types/ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.js → api/resources/sessions/types/SessionsEventsResponseError.js} +0 -0
@@ -0,0 +1,13 @@
1
+ /**
2
+ * This file was auto-generated by Fern from our API Definition.
3
+ */
4
+ /**
5
+ * Status of the session
6
+ */
7
+ export declare type StatusMessageStatus = "awaitingCapacity" | "initializing" | "running" | "ended";
8
+ export declare const StatusMessageStatus: {
9
+ readonly AwaitingCapacity: "awaitingCapacity";
10
+ readonly Initializing: "initializing";
11
+ readonly Running: "running";
12
+ readonly Ended: "ended";
13
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ /**
3
+ * This file was auto-generated by Fern from our API Definition.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.StatusMessageStatus = void 0;
7
+ exports.StatusMessageStatus = {
8
+ AwaitingCapacity: "awaitingCapacity",
9
+ Initializing: "initializing",
10
+ Running: "running",
11
+ Ended: "ended",
12
+ };
@@ -4,8 +4,6 @@
4
4
  export interface Window {
5
5
  /** Url for live view session */
6
6
  liveViewUrl: string;
7
- /** Token for authenticating to a live view session */
8
- token: string;
9
7
  /** Window ID for live view session */
10
8
  windowId: string;
11
9
  }
@@ -3,6 +3,7 @@ export * from "./AiResponseEnvelopeExternalSessionAiResponseMetadataWrapper";
3
3
  export * from "./ClientProvidedResponseMetadata";
4
4
  export * from "./DefaultMetaWrapper";
5
5
  export * from "./ErrorEnvelope";
6
+ export * from "./ErrorMessage";
6
7
  export * from "./ExternalProfileV1";
7
8
  export * from "./ExternalSessionAiResponseMetadataStatus";
8
9
  export * from "./ExternalSessionAiResponseMetadata";
@@ -12,11 +13,15 @@ export * from "./ExternalSessionWithConnectionInfo";
12
13
  export * from "./ExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper";
13
14
  export * from "./Issue";
14
15
  export * from "./ListExternalProfileV1EnvelopeDefaultMetaWrapper";
15
- export * from "./ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper";
16
+ export * from "./Pagination";
16
17
  export * from "./ScrapeResponseContent";
17
18
  export * from "./ScrapeResponseEnvelope";
18
19
  export * from "./ScrapeResponseEnvelopeExternalSessionAiResponseMetadataWrapper";
19
20
  export * from "./ScrapeResponseOutput";
20
21
  export * from "./SessionConfigV1";
22
+ export * from "./SessionsWithPagination";
23
+ export * from "./SessionsWithPaginationEnvelopeDefaultMetaWrapper";
24
+ export * from "./StatusMessageStatus";
25
+ export * from "./StatusMessage";
21
26
  export * from "./Window";
22
27
  export * from "./WindowEnvelopeDefaultMetaWrapper";
@@ -19,6 +19,7 @@ __exportStar(require("./AiResponseEnvelopeExternalSessionAiResponseMetadataWrapp
19
19
  __exportStar(require("./ClientProvidedResponseMetadata"), exports);
20
20
  __exportStar(require("./DefaultMetaWrapper"), exports);
21
21
  __exportStar(require("./ErrorEnvelope"), exports);
22
+ __exportStar(require("./ErrorMessage"), exports);
22
23
  __exportStar(require("./ExternalProfileV1"), exports);
23
24
  __exportStar(require("./ExternalSessionAiResponseMetadataStatus"), exports);
24
25
  __exportStar(require("./ExternalSessionAiResponseMetadata"), exports);
@@ -28,11 +29,15 @@ __exportStar(require("./ExternalSessionWithConnectionInfo"), exports);
28
29
  __exportStar(require("./ExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper"), exports);
29
30
  __exportStar(require("./Issue"), exports);
30
31
  __exportStar(require("./ListExternalProfileV1EnvelopeDefaultMetaWrapper"), exports);
31
- __exportStar(require("./ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper"), exports);
32
+ __exportStar(require("./Pagination"), exports);
32
33
  __exportStar(require("./ScrapeResponseContent"), exports);
33
34
  __exportStar(require("./ScrapeResponseEnvelope"), exports);
34
35
  __exportStar(require("./ScrapeResponseEnvelopeExternalSessionAiResponseMetadataWrapper"), exports);
35
36
  __exportStar(require("./ScrapeResponseOutput"), exports);
36
37
  __exportStar(require("./SessionConfigV1"), exports);
38
+ __exportStar(require("./SessionsWithPagination"), exports);
39
+ __exportStar(require("./SessionsWithPaginationEnvelopeDefaultMetaWrapper"), exports);
40
+ __exportStar(require("./StatusMessageStatus"), exports);
41
+ __exportStar(require("./StatusMessage"), exports);
37
42
  __exportStar(require("./Window"), exports);
38
43
  __exportStar(require("./WindowEnvelopeDefaultMetaWrapper"), exports);
package/core/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./fetcher";
2
2
  export * from "./auth";
3
3
  export * from "./runtime";
4
+ export * from "./streaming-fetcher";
4
5
  export * as serialization from "./schemas";
package/core/index.js CHANGED
@@ -30,4 +30,5 @@ exports.serialization = void 0;
30
30
  __exportStar(require("./fetcher"), exports);
31
31
  __exportStar(require("./auth"), exports);
32
32
  __exportStar(require("./runtime"), exports);
33
+ __exportStar(require("./streaming-fetcher"), exports);
33
34
  exports.serialization = __importStar(require("./schemas"));
@@ -0,0 +1,48 @@
1
+ /// <reference types="node" />
2
+ import { Readable } from "stream";
3
+ export declare namespace Stream {
4
+ interface Args {
5
+ /**
6
+ * The HTTP response stream to read from.
7
+ */
8
+ stream: Readable | ReadableStream;
9
+ /**
10
+ * The event shape to use for parsing the stream data.
11
+ */
12
+ eventShape: JsonEvent | SseEvent;
13
+ /**
14
+ * An abort signal to stop the stream.
15
+ */
16
+ signal?: AbortSignal;
17
+ }
18
+ interface JsonEvent {
19
+ type: "json";
20
+ messageTerminator: string;
21
+ }
22
+ interface SseEvent {
23
+ type: "sse";
24
+ streamTerminator?: string;
25
+ }
26
+ }
27
+ export declare class Stream<T> implements AsyncIterable<T> {
28
+ private stream;
29
+ private parse;
30
+ /**
31
+ * The prefix to use for each message. For example,
32
+ * for SSE, the prefix is "data: ".
33
+ */
34
+ private prefix;
35
+ private messageTerminator;
36
+ private streamTerminator;
37
+ private controller;
38
+ constructor({ stream, parse, eventShape, signal }: Stream.Args & {
39
+ parse: (val: unknown) => Promise<T>;
40
+ });
41
+ private iterMessages;
42
+ [Symbol.asyncIterator](): AsyncIterator<T, void, unknown>;
43
+ private decodeChunk;
44
+ }
45
+ /**
46
+ * Browser polyfill for ReadableStream
47
+ */
48
+ export declare function readableStreamAsyncIterable<T>(stream: any): AsyncIterableIterator<T>;
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
12
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
13
+ var m = o[Symbol.asyncIterator], i;
14
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
15
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
16
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
17
+ };
18
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }
19
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
20
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
21
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
22
+ return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
23
+ function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
24
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
25
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
26
+ function fulfill(value) { resume("next", value); }
27
+ function reject(value) { resume("throw", value); }
28
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
29
+ };
30
+ Object.defineProperty(exports, "__esModule", { value: true });
31
+ exports.readableStreamAsyncIterable = exports.Stream = void 0;
32
+ const runtime_1 = require("../runtime");
33
+ const DATA_PREFIX = "data:";
34
+ class Stream {
35
+ constructor({ stream, parse, eventShape, signal }) {
36
+ this.controller = new AbortController();
37
+ this.stream = stream;
38
+ this.parse = parse;
39
+ if (eventShape.type === "sse") {
40
+ this.prefix = DATA_PREFIX;
41
+ this.messageTerminator = "\n";
42
+ this.streamTerminator = eventShape.streamTerminator;
43
+ }
44
+ else {
45
+ this.messageTerminator = eventShape.messageTerminator;
46
+ }
47
+ signal === null || signal === void 0 ? void 0 : signal.addEventListener("abort", () => this.controller.abort());
48
+ }
49
+ iterMessages() {
50
+ return __asyncGenerator(this, arguments, function* iterMessages_1() {
51
+ var e_1, _a;
52
+ this.controller.signal;
53
+ const stream = readableStreamAsyncIterable(this.stream);
54
+ let buf = "";
55
+ let prefixSeen = false;
56
+ try {
57
+ for (var stream_1 = __asyncValues(stream), stream_1_1; stream_1_1 = yield __await(stream_1.next()), !stream_1_1.done;) {
58
+ const chunk = stream_1_1.value;
59
+ buf += this.decodeChunk(chunk);
60
+ let terminatorIndex;
61
+ // Parse the chunk into as many messages as possible
62
+ while ((terminatorIndex = buf.indexOf(this.messageTerminator)) >= 0) {
63
+ // Extract the line from the buffer
64
+ let line = buf.slice(0, terminatorIndex + 1);
65
+ buf = buf.slice(terminatorIndex + 1);
66
+ // Skip empty lines
67
+ if (line.length === 0) {
68
+ continue;
69
+ }
70
+ // Skip the chunk until the prefix is found
71
+ if (!prefixSeen && this.prefix != null) {
72
+ const prefixIndex = line.indexOf(this.prefix);
73
+ if (prefixIndex === -1) {
74
+ continue;
75
+ }
76
+ prefixSeen = true;
77
+ line = line.slice(prefixIndex + this.prefix.length);
78
+ }
79
+ // If the stream terminator is present, return
80
+ if (this.streamTerminator != null && line.includes(this.streamTerminator)) {
81
+ return yield __await(void 0);
82
+ }
83
+ // Otherwise, yield message from the prefix to the terminator
84
+ const message = yield __await(this.parse(JSON.parse(line)));
85
+ yield yield __await(message);
86
+ prefixSeen = false;
87
+ }
88
+ }
89
+ }
90
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
91
+ finally {
92
+ try {
93
+ if (stream_1_1 && !stream_1_1.done && (_a = stream_1.return)) yield __await(_a.call(stream_1));
94
+ }
95
+ finally { if (e_1) throw e_1.error; }
96
+ }
97
+ });
98
+ }
99
+ [Symbol.asyncIterator]() {
100
+ return __asyncGenerator(this, arguments, function* _a() {
101
+ var e_2, _b;
102
+ try {
103
+ for (var _c = __asyncValues(this.iterMessages()), _d; _d = yield __await(_c.next()), !_d.done;) {
104
+ const message = _d.value;
105
+ yield yield __await(message);
106
+ }
107
+ }
108
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
109
+ finally {
110
+ try {
111
+ if (_d && !_d.done && (_b = _c.return)) yield __await(_b.call(_c));
112
+ }
113
+ finally { if (e_2) throw e_2.error; }
114
+ }
115
+ });
116
+ }
117
+ decodeChunk(chunk) {
118
+ let decoded = "";
119
+ // If TextDecoder is present, use it
120
+ if (typeof TextDecoder !== "undefined") {
121
+ const decoder = new TextDecoder("utf8");
122
+ decoded += decoder.decode(chunk);
123
+ }
124
+ // Buffer is present in Node.js environment
125
+ else if (runtime_1.RUNTIME.type === "node" && typeof chunk != "undefined") {
126
+ decoded += Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk);
127
+ }
128
+ return decoded;
129
+ }
130
+ }
131
+ exports.Stream = Stream;
132
+ /**
133
+ * Browser polyfill for ReadableStream
134
+ */
135
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
136
+ function readableStreamAsyncIterable(stream) {
137
+ if (stream[Symbol.asyncIterator]) {
138
+ return stream;
139
+ }
140
+ const reader = stream.getReader();
141
+ return {
142
+ next() {
143
+ return __awaiter(this, void 0, void 0, function* () {
144
+ try {
145
+ const result = yield reader.read();
146
+ if (result === null || result === void 0 ? void 0 : result.done) {
147
+ reader.releaseLock();
148
+ } // release lock when stream becomes closed
149
+ return result;
150
+ }
151
+ catch (e) {
152
+ reader.releaseLock(); // release lock when stream becomes errored
153
+ throw e;
154
+ }
155
+ });
156
+ },
157
+ return() {
158
+ return __awaiter(this, void 0, void 0, function* () {
159
+ const cancelPromise = reader.cancel();
160
+ reader.releaseLock();
161
+ yield cancelPromise;
162
+ return { done: true, value: undefined };
163
+ });
164
+ },
165
+ [Symbol.asyncIterator]() {
166
+ return this;
167
+ },
168
+ };
169
+ }
170
+ exports.readableStreamAsyncIterable = readableStreamAsyncIterable;
@@ -0,0 +1 @@
1
+ export { Stream } from "./Stream";
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Stream = void 0;
4
+ var Stream_1 = require("./Stream");
5
+ Object.defineProperty(exports, "Stream", { enumerable: true, get: function () { return Stream_1.Stream; } });
@@ -1,3 +1,3 @@
1
+ export * from "./resources";
1
2
  export * from "./types";
2
3
  export * from "./errors";
3
- export * from "./resources";
package/dist/api/index.js CHANGED
@@ -14,6 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./resources"), exports);
17
18
  __exportStar(require("./types"), exports);
18
19
  __exportStar(require("./errors"), exports);
19
- __exportStar(require("./resources"), exports);
@@ -1,5 +1,6 @@
1
- export * as profiles from "./profiles";
2
1
  export * as sessions from "./sessions";
2
+ export * from "./sessions/types";
3
+ export * as profiles from "./profiles";
3
4
  export * as windows from "./windows";
4
5
  export * from "./profiles/client/requests";
5
6
  export * from "./sessions/client/requests";
@@ -26,9 +26,10 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
26
26
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.windows = exports.sessions = exports.profiles = void 0;
30
- exports.profiles = __importStar(require("./profiles"));
29
+ exports.windows = exports.profiles = exports.sessions = void 0;
31
30
  exports.sessions = __importStar(require("./sessions"));
31
+ __exportStar(require("./sessions/types"), exports);
32
+ exports.profiles = __importStar(require("./profiles"));
32
33
  exports.windows = __importStar(require("./windows"));
33
34
  __exportStar(require("./profiles/client/requests"), exports);
34
35
  __exportStar(require("./sessions/client/requests"), exports);
@@ -77,8 +77,8 @@ class Profiles {
77
77
  Authorization: yield this._getAuthorizationHeader(),
78
78
  "X-Fern-Language": "JavaScript",
79
79
  "X-Fern-SDK-Name": "@airtop/sdk",
80
- "X-Fern-SDK-Version": "0.0.8",
81
- "User-Agent": "@airtop/sdk/0.0.8",
80
+ "X-Fern-SDK-Version": "0.0.10-a",
81
+ "User-Agent": "@airtop/sdk/0.0.10-a",
82
82
  "X-Fern-Runtime": core.RUNTIME.type,
83
83
  "X-Fern-Runtime-Version": core.RUNTIME.version,
84
84
  },
@@ -148,8 +148,8 @@ class Profiles {
148
148
  Authorization: yield this._getAuthorizationHeader(),
149
149
  "X-Fern-Language": "JavaScript",
150
150
  "X-Fern-SDK-Name": "@airtop/sdk",
151
- "X-Fern-SDK-Version": "0.0.8",
152
- "User-Agent": "@airtop/sdk/0.0.8",
151
+ "X-Fern-SDK-Version": "0.0.10-a",
152
+ "User-Agent": "@airtop/sdk/0.0.10-a",
153
153
  "X-Fern-Runtime": core.RUNTIME.type,
154
154
  "X-Fern-Runtime-Version": core.RUNTIME.version,
155
155
  },
@@ -33,9 +33,12 @@ export declare class Sessions {
33
33
  * @throws {@link Airtop.InternalServerError}
34
34
  *
35
35
  * @example
36
- * await client.sessions.list()
36
+ * await client.sessions.list({
37
+ * offset: 1,
38
+ * limit: 10
39
+ * })
37
40
  */
38
- list(request?: Airtop.SessionsListRequest, requestOptions?: Sessions.RequestOptions): Promise<Airtop.ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper>;
41
+ list(request?: Airtop.SessionsListRequest, requestOptions?: Sessions.RequestOptions): Promise<Airtop.SessionsWithPaginationEnvelopeDefaultMetaWrapper>;
39
42
  /**
40
43
  * @param {Airtop.SessionRestInputV1} request
41
44
  * @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
@@ -47,7 +50,7 @@ export declare class Sessions {
47
50
  /**
48
51
  * Get a session by ID
49
52
  *
50
- * @param {string} id - UUID of the session to get
53
+ * @param {string} id - Id of the session to get
51
54
  * @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
52
55
  *
53
56
  * @throws {@link Airtop.NotFoundError}
@@ -61,12 +64,16 @@ export declare class Sessions {
61
64
  /**
62
65
  * Ends a session by ID. If a given session id does not exist within the organization, it is ignored.
63
66
  *
64
- * @param {string} id - UUID of the session to delete
67
+ * @param {string} id - ID of the session to delete
65
68
  * @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
66
69
  *
67
70
  * @example
68
71
  * await client.sessions.terminate("6aac6f73-bd89-4a76-ab32-5a6c422e8b0b")
69
72
  */
70
73
  terminate(id: string, requestOptions?: Sessions.RequestOptions): Promise<void>;
74
+ /**
75
+ * Get a session event stream for a given session ID
76
+ */
77
+ events(id: string, requestOptions?: Sessions.RequestOptions): Promise<core.Stream<Airtop.SessionsEventsResponse>>;
71
78
  protected _getAuthorizationHeader(): Promise<string | undefined>;
72
79
  }
@@ -60,12 +60,15 @@ class Sessions {
60
60
  * @throws {@link Airtop.InternalServerError}
61
61
  *
62
62
  * @example
63
- * await client.sessions.list()
63
+ * await client.sessions.list({
64
+ * offset: 1,
65
+ * limit: 10
66
+ * })
64
67
  */
65
68
  list(request = {}, requestOptions) {
66
69
  var _a, _b;
67
70
  return __awaiter(this, void 0, void 0, function* () {
68
- const { sessionIds } = request;
71
+ const { sessionIds, status, offset, limit } = request;
69
72
  const _queryParams = {};
70
73
  if (sessionIds != null) {
71
74
  if (Array.isArray(sessionIds)) {
@@ -75,6 +78,15 @@ class Sessions {
75
78
  _queryParams["sessionIds"] = sessionIds;
76
79
  }
77
80
  }
81
+ if (status != null) {
82
+ _queryParams["status"] = status;
83
+ }
84
+ if (offset != null) {
85
+ _queryParams["offset"] = offset.toString();
86
+ }
87
+ if (limit != null) {
88
+ _queryParams["limit"] = limit.toString();
89
+ }
78
90
  const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
79
91
  url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.AirtopEnvironment.Default, "sessions"),
80
92
  method: "GET",
@@ -82,8 +94,8 @@ class Sessions {
82
94
  Authorization: yield this._getAuthorizationHeader(),
83
95
  "X-Fern-Language": "JavaScript",
84
96
  "X-Fern-SDK-Name": "@airtop/sdk",
85
- "X-Fern-SDK-Version": "0.0.8",
86
- "User-Agent": "@airtop/sdk/0.0.8",
97
+ "X-Fern-SDK-Version": "0.0.10-a",
98
+ "User-Agent": "@airtop/sdk/0.0.10-a",
87
99
  "X-Fern-Runtime": core.RUNTIME.type,
88
100
  "X-Fern-Runtime-Version": core.RUNTIME.version,
89
101
  },
@@ -95,7 +107,7 @@ class Sessions {
95
107
  abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
96
108
  });
97
109
  if (_response.ok) {
98
- return serializers.ListExternalSessionWithConnectionInfoEnvelopeDefaultMetaWrapper.parseOrThrow(_response.body, {
110
+ return serializers.SessionsWithPaginationEnvelopeDefaultMetaWrapper.parseOrThrow(_response.body, {
99
111
  unrecognizedObjectKeys: "passthrough",
100
112
  allowUnrecognizedUnionMembers: true,
101
113
  allowUnrecognizedEnumValues: true,
@@ -168,8 +180,8 @@ class Sessions {
168
180
  Authorization: yield this._getAuthorizationHeader(),
169
181
  "X-Fern-Language": "JavaScript",
170
182
  "X-Fern-SDK-Name": "@airtop/sdk",
171
- "X-Fern-SDK-Version": "0.0.8",
172
- "User-Agent": "@airtop/sdk/0.0.8",
183
+ "X-Fern-SDK-Version": "0.0.10-a",
184
+ "User-Agent": "@airtop/sdk/0.0.10-a",
173
185
  "X-Fern-Runtime": core.RUNTIME.type,
174
186
  "X-Fern-Runtime-Version": core.RUNTIME.version,
175
187
  },
@@ -213,7 +225,7 @@ class Sessions {
213
225
  /**
214
226
  * Get a session by ID
215
227
  *
216
- * @param {string} id - UUID of the session to get
228
+ * @param {string} id - Id of the session to get
217
229
  * @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
218
230
  *
219
231
  * @throws {@link Airtop.NotFoundError}
@@ -233,8 +245,8 @@ class Sessions {
233
245
  Authorization: yield this._getAuthorizationHeader(),
234
246
  "X-Fern-Language": "JavaScript",
235
247
  "X-Fern-SDK-Name": "@airtop/sdk",
236
- "X-Fern-SDK-Version": "0.0.8",
237
- "User-Agent": "@airtop/sdk/0.0.8",
248
+ "X-Fern-SDK-Version": "0.0.10-a",
249
+ "User-Agent": "@airtop/sdk/0.0.10-a",
238
250
  "X-Fern-Runtime": core.RUNTIME.type,
239
251
  "X-Fern-Runtime-Version": core.RUNTIME.version,
240
252
  },
@@ -304,7 +316,7 @@ class Sessions {
304
316
  /**
305
317
  * Ends a session by ID. If a given session id does not exist within the organization, it is ignored.
306
318
  *
307
- * @param {string} id - UUID of the session to delete
319
+ * @param {string} id - ID of the session to delete
308
320
  * @param {Sessions.RequestOptions} requestOptions - Request-specific configuration.
309
321
  *
310
322
  * @example
@@ -320,8 +332,8 @@ class Sessions {
320
332
  Authorization: yield this._getAuthorizationHeader(),
321
333
  "X-Fern-Language": "JavaScript",
322
334
  "X-Fern-SDK-Name": "@airtop/sdk",
323
- "X-Fern-SDK-Version": "0.0.8",
324
- "User-Agent": "@airtop/sdk/0.0.8",
335
+ "X-Fern-SDK-Version": "0.0.10-a",
336
+ "User-Agent": "@airtop/sdk/0.0.10-a",
325
337
  "X-Fern-Runtime": core.RUNTIME.type,
326
338
  "X-Fern-Runtime-Version": core.RUNTIME.version,
327
339
  },
@@ -355,6 +367,98 @@ class Sessions {
355
367
  }
356
368
  });
357
369
  }
370
+ /**
371
+ * Get a session event stream for a given session ID
372
+ */
373
+ events(id, requestOptions) {
374
+ var _a, _b;
375
+ return __awaiter(this, void 0, void 0, function* () {
376
+ const _response = yield ((_a = this._options.fetcher) !== null && _a !== void 0 ? _a : core.fetcher)({
377
+ url: (0, url_join_1.default)((_b = (yield core.Supplier.get(this._options.environment))) !== null && _b !== void 0 ? _b : environments.AirtopEnvironment.Default, `sessions/${encodeURIComponent(id)}/events`),
378
+ method: "GET",
379
+ headers: {
380
+ Authorization: yield this._getAuthorizationHeader(),
381
+ "X-Fern-Language": "JavaScript",
382
+ "X-Fern-SDK-Name": "@airtop/sdk",
383
+ "X-Fern-SDK-Version": "0.0.10-a",
384
+ "User-Agent": "@airtop/sdk/0.0.10-a",
385
+ "X-Fern-Runtime": core.RUNTIME.type,
386
+ "X-Fern-Runtime-Version": core.RUNTIME.version,
387
+ },
388
+ contentType: "application/json",
389
+ requestType: "json",
390
+ responseType: "sse",
391
+ timeoutMs: (requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) != null ? requestOptions.timeoutInSeconds * 1000 : 60000,
392
+ maxRetries: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries,
393
+ abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
394
+ });
395
+ if (_response.ok) {
396
+ return new core.Stream({
397
+ stream: _response.body,
398
+ parse: (data) => __awaiter(this, void 0, void 0, function* () {
399
+ return serializers.SessionsEventsResponse.parseOrThrow(data, {
400
+ unrecognizedObjectKeys: "passthrough",
401
+ allowUnrecognizedUnionMembers: true,
402
+ allowUnrecognizedEnumValues: true,
403
+ skipValidation: true,
404
+ breadcrumbsPrefix: ["response"],
405
+ });
406
+ }),
407
+ signal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
408
+ eventShape: {
409
+ type: "sse",
410
+ streamTerminator: "[DONE]",
411
+ },
412
+ });
413
+ }
414
+ if (_response.error.reason === "status-code") {
415
+ switch (_response.error.statusCode) {
416
+ case 404:
417
+ throw new Airtop.NotFoundError(serializers.ErrorEnvelope.parseOrThrow(_response.error.body, {
418
+ unrecognizedObjectKeys: "passthrough",
419
+ allowUnrecognizedUnionMembers: true,
420
+ allowUnrecognizedEnumValues: true,
421
+ skipValidation: true,
422
+ breadcrumbsPrefix: ["response"],
423
+ }));
424
+ case 422:
425
+ throw new Airtop.UnprocessableEntityError(serializers.ErrorEnvelope.parseOrThrow(_response.error.body, {
426
+ unrecognizedObjectKeys: "passthrough",
427
+ allowUnrecognizedUnionMembers: true,
428
+ allowUnrecognizedEnumValues: true,
429
+ skipValidation: true,
430
+ breadcrumbsPrefix: ["response"],
431
+ }));
432
+ case 500:
433
+ throw new Airtop.InternalServerError(serializers.ErrorEnvelope.parseOrThrow(_response.error.body, {
434
+ unrecognizedObjectKeys: "passthrough",
435
+ allowUnrecognizedUnionMembers: true,
436
+ allowUnrecognizedEnumValues: true,
437
+ skipValidation: true,
438
+ breadcrumbsPrefix: ["response"],
439
+ }));
440
+ default:
441
+ throw new errors.AirtopError({
442
+ statusCode: _response.error.statusCode,
443
+ body: _response.error.body,
444
+ });
445
+ }
446
+ }
447
+ switch (_response.error.reason) {
448
+ case "non-json":
449
+ throw new errors.AirtopError({
450
+ statusCode: _response.error.statusCode,
451
+ body: _response.error.rawBody,
452
+ });
453
+ case "timeout":
454
+ throw new errors.AirtopTimeoutError();
455
+ case "unknown":
456
+ throw new errors.AirtopError({
457
+ message: _response.error.errorMessage,
458
+ });
459
+ }
460
+ });
461
+ }
358
462
  _getAuthorizationHeader() {
359
463
  return __awaiter(this, void 0, void 0, function* () {
360
464
  const bearer = yield core.Supplier.get(this._options.apiKey);