@neta-art/cohub 1.8.0 → 1.10.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.
Files changed (51) hide show
  1. package/README.md +6 -105
  2. package/dist/chunks/environment.js +33 -0
  3. package/dist/chunks/http.d.ts +1615 -0
  4. package/dist/chunks/http.js +1919 -0
  5. package/dist/chunks/websocket.d.ts +266 -0
  6. package/dist/chunks/websocket.js +655 -0
  7. package/dist/http.d.ts +3 -30
  8. package/dist/http.js +2 -45
  9. package/dist/index.d.ts +35 -14
  10. package/dist/index.js +105 -8
  11. package/dist/websocket.d.ts +2 -141
  12. package/dist/websocket.js +2 -628
  13. package/package.json +7 -7
  14. package/dist/apis/channels.d.ts +0 -13
  15. package/dist/apis/channels.js +0 -24
  16. package/dist/apis/cron-jobs.d.ts +0 -18
  17. package/dist/apis/cron-jobs.js +0 -25
  18. package/dist/apis/explore.d.ts +0 -9
  19. package/dist/apis/explore.js +0 -9
  20. package/dist/apis/generations.d.ts +0 -8
  21. package/dist/apis/generations.js +0 -16
  22. package/dist/apis/invitations.d.ts +0 -20
  23. package/dist/apis/invitations.js +0 -36
  24. package/dist/apis/models.d.ts +0 -7
  25. package/dist/apis/models.js +0 -9
  26. package/dist/apis/prompts.d.ts +0 -9
  27. package/dist/apis/prompts.js +0 -16
  28. package/dist/apis/search.d.ts +0 -10
  29. package/dist/apis/search.js +0 -14
  30. package/dist/apis/session-access.d.ts +0 -13
  31. package/dist/apis/session-access.js +0 -19
  32. package/dist/apis/spaces.d.ts +0 -371
  33. package/dist/apis/spaces.js +0 -766
  34. package/dist/apis/tasks.d.ts +0 -13
  35. package/dist/apis/tasks.js +0 -18
  36. package/dist/apis/user.d.ts +0 -27
  37. package/dist/apis/user.js +0 -71
  38. package/dist/client.d.ts +0 -33
  39. package/dist/client.js +0 -103
  40. package/dist/environment.d.ts +0 -22
  41. package/dist/environment.js +0 -37
  42. package/dist/realtime.d.ts +0 -2
  43. package/dist/realtime.js +0 -8
  44. package/dist/session-generation-stream.d.ts +0 -114
  45. package/dist/session-generation-stream.js +0 -514
  46. package/dist/session-patch-reducer.d.ts +0 -61
  47. package/dist/session-patch-reducer.js +0 -432
  48. package/dist/transport.d.ts +0 -40
  49. package/dist/transport.js +0 -78
  50. package/dist/types.d.ts +0 -535
  51. package/dist/types.js +0 -1
package/dist/http.js CHANGED
@@ -1,45 +1,2 @@
1
- import { ChannelsApi } from "./apis/channels.js";
2
- import { CronJobsApi } from "./apis/cron-jobs.js";
3
- import { GenerationsApi } from "./apis/generations.js";
4
- import { ModelsApi } from "./apis/models.js";
5
- import { PromptsApi } from "./apis/prompts.js";
6
- import { SessionAccessApi } from "./apis/session-access.js";
7
- import { SpaceClient, SpacesApi } from "./apis/spaces.js";
8
- import { TasksApi } from "./apis/tasks.js";
9
- import { UserApi } from "./apis/user.js";
10
- import { PublicInviteApi } from "./apis/invitations.js";
11
- import { HttpTransport, HttpError } from "./transport.js";
12
- import { resolveApiBaseUrl } from "./environment.js";
13
- export class CohubHttpClient {
14
- spaces;
15
- channels;
16
- user;
17
- generations;
18
- models;
19
- prompts;
20
- sessionAccess;
21
- tasks;
22
- cronJobs;
23
- invite;
24
- transport;
25
- constructor(options = {}) {
26
- const apiBaseUrl = resolveApiBaseUrl(options);
27
- this.transport = new HttpTransport(options);
28
- this.spaces = new SpacesApi(this.transport);
29
- this.channels = new ChannelsApi(this.transport);
30
- this.user = new UserApi(this.transport, apiBaseUrl, options.setStoredAuthToken, options.clearStoredAuthToken);
31
- this.generations = new GenerationsApi(this.transport);
32
- this.models = new ModelsApi(this.transport);
33
- this.prompts = new PromptsApi(this.transport);
34
- this.sessionAccess = new SessionAccessApi(this.transport);
35
- this.tasks = new TasksApi(this.transport);
36
- this.cronJobs = new CronJobsApi(this.transport);
37
- this.invite = new PublicInviteApi(this.transport);
38
- }
39
- space(spaceId) {
40
- return new SpaceClient(spaceId, this.transport, null);
41
- }
42
- }
43
- export const createHttpClient = (options) => new CohubHttpClient(options);
44
- export { HttpTransport, HttpError };
45
- export * from "./types.js";
1
+ import { m as HttpTransport, n as createHttpClient, p as HttpError, t as CohubHttpClient } from "./chunks/http.js";
2
+ export { CohubHttpClient, HttpError, HttpTransport, createHttpClient };
package/dist/index.d.ts CHANGED
@@ -1,14 +1,35 @@
1
- export { CohubHttpClient, createHttpClient } from "./http.js";
2
- export { CohubClient, createCohubClient } from "./client.js";
3
- export { WebsocketClient, createWebsocketClient } from "./websocket.js";
4
- export { SessionPatchReducer, createSessionPatchReducer } from "./session-patch-reducer.js";
5
- export { SessionGenerationStreamClient, createSessionGenerationStreamClient, parseAssistantMessageCommit, } from "./session-generation-stream.js";
6
- export { HttpError } from "./transport.js";
7
- export type { RawHttpResponse } from "./transport.js";
8
- export { COHUB_ENVIRONMENTS, normalizeBaseUrl, normalizeWebsocketUrl, resolveApiBaseUrl, resolveCohubEnvironment, resolveWebsocketUrl, } from "./environment.js";
9
- export type { CohubClientOptions, Fetch } from "./transport.js";
10
- export type { CohubEnvironment } from "./environment.js";
11
- export type { SessionPatchApplyInput, SessionPatchApplyResult, SessionPatchState, SessionPatchStatus, } from "./session-patch-reducer.js";
12
- export type { AssistantMessageCommit, GenerationStreamCommitEvent, GenerationStreamErrorEvent, GenerationStreamEvent, GenerationStreamFinalizedEvent, GenerationStreamIntermediateMessage, GenerationStreamOutOfSyncEvent, GenerationStreamStateEvent, GenerationStreamSubscriptionHandlers, GenerationStreamTurnUpdatedEvent, } from "./session-generation-stream.js";
13
- export * from "./types.js";
14
- export type { SessionEventName, SessionSubscriptionHandlers, SpaceChannelBindingRecord, SpaceEventName, WebSocketConnectionState } from "./apis/spaces.js";
1
+ import { _ as resolveCohubEnvironment, c as createWebsocketClient, f as COHUB_ENVIRONMENTS, g as resolveApiBaseUrl, h as normalizeWebsocketUrl, l as ContentBlock, m as normalizeBaseUrl, p as CohubEnvironment, r as WebsocketClient, v as resolveWebsocketUrl } from "./chunks/websocket.js";
2
+ import { $ as MeResponse, $t as SpaceUsageResponse, A as SessionPatchStatus, At as SpaceFsReadFilesError, B as ApiError, Bt as SpaceFsWriteFileInput, C as SessionGenerationStreamClient, Ct as SpaceFsCreateUploadResponse, D as SessionPatchApplyResult, Dt as SpaceFsFileResponse, E as SessionPatchApplyInput, Et as SpaceFsFileKind, F as ModelsApi, Ft as SpaceFsUploadError, G as CreateSpacePromptInput, Gt as SpaceMarkListItem, H as CheckpointRecord, Ht as SpaceInvitation, I as GenerationsApi, It as SpaceFsUploadPlanEntry, J as ExploreSpaceItem, Jt as SpaceMember, K as CreateSpacePromptResponse, Kt as SpaceMarkRecord, L as CronJobsApi, Lt as SpaceFsUploadPlanEntryInput, M as SessionAccessApi, Mt as SpaceFsReadFilesResponse, N as SearchApi, Nt as SpaceFsTreeResponse, O as SessionPatchReducer, Ot as SpaceFsMoveInput, P as PromptsApi, Pt as SpaceFsUploadEntry, Q as InvitationDetail, Qt as SpaceUsageHourlyStat, R as ChannelsApi, Rt as SpaceFsUploadProgress, S as GenerationStreamTurnUpdatedEvent, St as SpaceFsCreateUploadInput, T as parseAssistantMessageCommit, Tt as SpaceFsEntry, U as CreateInvitationInput, Ut as SpaceListItem, V as Channel, Vt as SpaceGitInfo, W as CreateInvitationResponse, Wt as SpaceMarkKind, X as GlobalSearchResult, Xt as SpaceRole, Y as GlobalSearchResponse, Yt as SpaceRecord, Z as GlobalSearchType, Zt as SpaceSessionsResponse, _ as GenerationStreamFinalizedEvent, _n as CohubClientOptions, _t as SpaceCheckpointDetailResponse, a as SessionEventName, an as UserSshKey, at as SessionMessagesPaginatedResponse, b as GenerationStreamStateEvent, bn as HttpTransport, bt as SpaceFsCompleteUploadInput, c as SpaceClient, cn as ListGenerationModelsResponse, ct as SessionTurnIndexResponse, d as WebSocketConnectionState, dn as DiscordChannelConfig, dt as SessionTurnStreamSnapshotResponse, en as SpaceUsageSummary, et as ModelCatalogEntry, f as PublicInviteApi, fn as MessageRecord, ft as SessionTurnWindowResponse, g as GenerationStreamEvent, gn as SessionTurnRecord, gt as SpaceChannelBindingInput, h as GenerationStreamErrorEvent, hn as SessionTurnIndexItem, ht as SpaceBootstrapSource, i as TasksApi, in as UserRulesResponse, it as SessionMessageResponse, j as createSessionPatchReducer, jt as SpaceFsReadFilesInput, k as SessionPatchState, kt as SpaceFsPreparingFile, l as SpaceEventName, ln as PublicGenerationDeclaration, lt as SessionTurnResponse, m as GenerationStreamCommitEvent, mn as SessionTurnSegmentRecord, mt as SpaceAccessPolicy, n as createHttpClient, nn as TaskRunRecord, nt as PromptTemplateCatalogResponse, o as SessionSubscriptionHandlers, on as CreateGenerationRequest, ot as SessionMessagesResponse, p as AssistantMessageCommit, pn as SessionForkRecord, pt as SessionTurnsPaginatedResponse, q as CronJobRecord, qt as SpaceMarkResourceType, r as UserApi, rn as UserProfile, rt as SessionBindingRecord, s as SpaceChannelBindingRecord, sn as Generation, st as SessionRecord, t as CohubHttpClient, tn as TaskRunDetailResponse, tt as PromptTemplateCatalogEntry, u as SpacesApi, un as ChannelConfig, ut as SessionTurnSignedUrlsResponse, v as GenerationStreamIntermediateMessage, vn as Fetch, vt as SpaceCreateResponse, w as createSessionGenerationStreamClient, wt as SpaceFsEncoding, x as GenerationStreamSubscriptionHandlers, xn as RawHttpResponse, xt as SpaceFsCompleteUploadResponse, y as GenerationStreamOutOfSyncEvent, yn as HttpError, yt as SpaceEnvInput, z as AcceptInvitationResponse, zt as SpaceFsUploadResponse } from "./chunks/http.js";
3
+
4
+ //#region src/apis/explore.d.ts
5
+ declare class ExploreApi {
6
+ private readonly transport;
7
+ constructor(transport: HttpTransport);
8
+ spaces(): Promise<{
9
+ spaces: ExploreSpaceItem[];
10
+ }>;
11
+ }
12
+ //#endregion
13
+ //#region src/client.d.ts
14
+ declare class CohubClient {
15
+ readonly spaces: SpacesApi;
16
+ readonly channels: ChannelsApi;
17
+ readonly user: UserApi;
18
+ readonly generations: GenerationsApi;
19
+ readonly models: ModelsApi;
20
+ readonly prompts: PromptsApi;
21
+ readonly sessionAccess: SessionAccessApi;
22
+ readonly search: SearchApi;
23
+ readonly tasks: TasksApi;
24
+ readonly cronJobs: CronJobsApi;
25
+ readonly explore: ExploreApi;
26
+ readonly invite: PublicInviteApi;
27
+ private readonly transport;
28
+ private readonly websocketClient;
29
+ constructor(options?: CohubClientOptions);
30
+ space(spaceId: string): SpaceClient;
31
+ onConnection(handler: (state: WebSocketConnectionState) => void): () => void;
32
+ }
33
+ declare const createCohubClient: (options?: CohubClientOptions) => CohubClient;
34
+ //#endregion
35
+ export { AcceptInvitationResponse, ApiError, type AssistantMessageCommit, COHUB_ENVIRONMENTS, Channel, ChannelConfig, CheckpointRecord, CohubClient, type CohubClientOptions, type CohubEnvironment, CohubHttpClient, ContentBlock, CreateGenerationRequest, CreateInvitationInput, CreateInvitationResponse, CreateSpacePromptInput, CreateSpacePromptResponse, CronJobRecord, DiscordChannelConfig, ExploreSpaceItem, type Fetch, Generation, type GenerationStreamCommitEvent, type GenerationStreamErrorEvent, type GenerationStreamEvent, type GenerationStreamFinalizedEvent, type GenerationStreamIntermediateMessage, type GenerationStreamOutOfSyncEvent, type GenerationStreamStateEvent, type GenerationStreamSubscriptionHandlers, type GenerationStreamTurnUpdatedEvent, GlobalSearchResponse, GlobalSearchResult, GlobalSearchType, HttpError, InvitationDetail, ListGenerationModelsResponse, MeResponse, MessageRecord, ModelCatalogEntry, PromptTemplateCatalogEntry, PromptTemplateCatalogResponse, PublicGenerationDeclaration, type RawHttpResponse, SessionBindingRecord, type SessionEventName, SessionForkRecord, SessionGenerationStreamClient, SessionMessageResponse, SessionMessagesPaginatedResponse, SessionMessagesResponse, type SessionPatchApplyInput, type SessionPatchApplyResult, SessionPatchReducer, type SessionPatchState, type SessionPatchStatus, SessionRecord, type SessionSubscriptionHandlers, SessionTurnIndexItem, SessionTurnIndexResponse, SessionTurnRecord, SessionTurnResponse, SessionTurnSegmentRecord, SessionTurnSignedUrlsResponse, SessionTurnStreamSnapshotResponse, SessionTurnWindowResponse, SessionTurnsPaginatedResponse, SpaceAccessPolicy, SpaceBootstrapSource, SpaceChannelBindingInput, type SpaceChannelBindingRecord, SpaceCheckpointDetailResponse, SpaceCreateResponse, SpaceEnvInput, type SpaceEventName, SpaceFsCompleteUploadInput, SpaceFsCompleteUploadResponse, SpaceFsCreateUploadInput, SpaceFsCreateUploadResponse, SpaceFsEncoding, SpaceFsEntry, SpaceFsFileKind, SpaceFsFileResponse, SpaceFsMoveInput, SpaceFsPreparingFile, SpaceFsReadFilesError, SpaceFsReadFilesInput, SpaceFsReadFilesResponse, SpaceFsTreeResponse, SpaceFsUploadEntry, SpaceFsUploadError, SpaceFsUploadPlanEntry, SpaceFsUploadPlanEntryInput, SpaceFsUploadProgress, SpaceFsUploadResponse, SpaceFsWriteFileInput, SpaceGitInfo, SpaceInvitation, SpaceListItem, SpaceMarkKind, SpaceMarkListItem, SpaceMarkRecord, SpaceMarkResourceType, SpaceMember, SpaceRecord, SpaceRole, SpaceSessionsResponse, SpaceUsageHourlyStat, SpaceUsageResponse, SpaceUsageSummary, TaskRunDetailResponse, TaskRunRecord, UserProfile, UserRulesResponse, UserSshKey, type WebSocketConnectionState, WebsocketClient, createCohubClient, createHttpClient, createSessionGenerationStreamClient, createSessionPatchReducer, createWebsocketClient, normalizeBaseUrl, normalizeWebsocketUrl, parseAssistantMessageCommit, resolveApiBaseUrl, resolveCohubEnvironment, resolveWebsocketUrl };
package/dist/index.js CHANGED
@@ -1,8 +1,105 @@
1
- export { CohubHttpClient, createHttpClient } from "./http.js";
2
- export { CohubClient, createCohubClient } from "./client.js";
3
- export { WebsocketClient, createWebsocketClient } from "./websocket.js";
4
- export { SessionPatchReducer, createSessionPatchReducer } from "./session-patch-reducer.js";
5
- export { SessionGenerationStreamClient, createSessionGenerationStreamClient, parseAssistantMessageCommit, } from "./session-generation-stream.js";
6
- export { HttpError } from "./transport.js";
7
- export { COHUB_ENVIRONMENTS, normalizeBaseUrl, normalizeWebsocketUrl, resolveApiBaseUrl, resolveCohubEnvironment, resolveWebsocketUrl, } from "./environment.js";
8
- export * from "./types.js";
1
+ import { _ as PromptsApi, a as SpaceClient, b as CronJobsApi, c as SessionGenerationStreamClient, d as SessionPatchReducer, f as createSessionPatchReducer, g as SearchApi, h as SessionAccessApi, i as TasksApi, l as createSessionGenerationStreamClient, m as HttpTransport, n as createHttpClient, o as SpacesApi, p as HttpError, r as UserApi, s as PublicInviteApi, t as CohubHttpClient, u as parseAssistantMessageCommit, v as ModelsApi, x as ChannelsApi, y as GenerationsApi } from "./chunks/http.js";
2
+ import { a as resolveCohubEnvironment, i as resolveApiBaseUrl, n as normalizeBaseUrl, o as resolveWebsocketUrl, r as normalizeWebsocketUrl, t as COHUB_ENVIRONMENTS } from "./chunks/environment.js";
3
+ import { n as createWebsocketClient, t as WebsocketClient } from "./chunks/websocket.js";
4
+ //#region src/apis/explore.ts
5
+ var ExploreApi = class {
6
+ transport;
7
+ constructor(transport) {
8
+ this.transport = transport;
9
+ }
10
+ spaces() {
11
+ return this.transport.request("/api/explore/spaces");
12
+ }
13
+ };
14
+ //#endregion
15
+ //#region src/client.ts
16
+ var CohubClient = class {
17
+ spaces;
18
+ channels;
19
+ user;
20
+ generations;
21
+ models;
22
+ prompts;
23
+ sessionAccess;
24
+ search;
25
+ tasks;
26
+ cronJobs;
27
+ explore;
28
+ invite;
29
+ transport;
30
+ websocketClient;
31
+ constructor(options = {}) {
32
+ const apiBaseUrl = resolveApiBaseUrl(options);
33
+ this.transport = new HttpTransport(options);
34
+ this.websocketClient = createWebsocketClient({
35
+ url: resolveWebsocketUrl({
36
+ env: options.websocket?.env ?? options.env,
37
+ url: options.websocket?.url
38
+ }),
39
+ ...options.websocket,
40
+ getAccessToken: options.getAccessToken
41
+ });
42
+ this.spaces = new SpacesApi(this.transport);
43
+ this.channels = new ChannelsApi(this.transport);
44
+ this.user = new UserApi(this.transport, apiBaseUrl, options.setStoredAuthToken, options.clearStoredAuthToken);
45
+ this.generations = new GenerationsApi(this.transport);
46
+ this.models = new ModelsApi(this.transport);
47
+ this.prompts = new PromptsApi(this.transport);
48
+ this.sessionAccess = new SessionAccessApi(this.transport);
49
+ this.search = new SearchApi(this.transport);
50
+ this.tasks = new TasksApi(this.transport);
51
+ this.cronJobs = new CronJobsApi(this.transport);
52
+ this.explore = new ExploreApi(this.transport);
53
+ this.invite = new PublicInviteApi(this.transport);
54
+ }
55
+ space(spaceId) {
56
+ return new SpaceClient(spaceId, this.transport, this.websocketClient);
57
+ }
58
+ onConnection(handler) {
59
+ const connectingCleanup = this.websocketClient.on("connecting", (payload) => {
60
+ handler({
61
+ state: payload.isReconnect ? "reconnecting" : "connecting",
62
+ willReconnect: payload.isReconnect,
63
+ attempt: payload.attempt
64
+ });
65
+ });
66
+ const reconnectingCleanup = this.websocketClient.on("reconnecting", (payload) => {
67
+ handler({
68
+ state: "reconnecting",
69
+ willReconnect: true,
70
+ attempt: payload.attempt,
71
+ delayMs: payload.delayMs
72
+ });
73
+ });
74
+ const openCleanup = this.websocketClient.on("open", (payload) => {
75
+ handler({
76
+ state: "open",
77
+ willReconnect: false,
78
+ connectionId: payload.connectionId
79
+ });
80
+ });
81
+ const closeCleanup = this.websocketClient.on("close", (payload) => {
82
+ handler({
83
+ state: "closed",
84
+ willReconnect: payload.willReconnect
85
+ });
86
+ });
87
+ const errorCleanup = this.websocketClient.on("error", (payload) => {
88
+ handler({
89
+ state: "error",
90
+ willReconnect: payload.recoverable,
91
+ recoverable: payload.recoverable
92
+ });
93
+ });
94
+ return () => {
95
+ connectingCleanup();
96
+ reconnectingCleanup();
97
+ openCleanup();
98
+ closeCleanup();
99
+ errorCleanup();
100
+ };
101
+ }
102
+ };
103
+ const createCohubClient = (options) => new CohubClient(options);
104
+ //#endregion
105
+ export { COHUB_ENVIRONMENTS, CohubClient, CohubHttpClient, HttpError, SessionGenerationStreamClient, SessionPatchReducer, WebsocketClient, createCohubClient, createHttpClient, createSessionGenerationStreamClient, createSessionPatchReducer, createWebsocketClient, normalizeBaseUrl, normalizeWebsocketUrl, parseAssistantMessageCommit, resolveApiBaseUrl, resolveCohubEnvironment, resolveWebsocketUrl };
@@ -1,141 +1,2 @@
1
- import { type ChannelEnvelope } from "@neta-art/cohub-protocol/realtime";
2
- import type { ContentBlock } from "@neta-art/cohub-protocol/core";
3
- import type { CohubEnvironment } from "./environment.js";
4
- export type WebsocketEventPayload = ChannelEnvelope;
5
- export type WebSocketLike = {
6
- readonly readyState: number;
7
- onopen: ((event: Event) => void) | null;
8
- onmessage: ((event: MessageEvent) => void) | null;
9
- onerror: ((event: Event) => void) | null;
10
- onclose: ((event: CloseEvent) => void) | null;
11
- send(data: string): void;
12
- close(code?: number, reason?: string): void;
13
- };
14
- export type WebSocketConstructor = new (url: string) => WebSocketLike;
15
- export type WebsocketClientOptions = {
16
- env?: CohubEnvironment;
17
- url?: string;
18
- autoReconnect?: boolean;
19
- reconnectBaseDelayMs?: number;
20
- reconnectMaxDelayMs?: number;
21
- pingIntervalMs?: number;
22
- pongTimeoutMs?: number;
23
- debug?: boolean;
24
- getAccessToken?: () => Promise<string | null> | string | null;
25
- WebSocketImpl?: WebSocketConstructor;
26
- };
27
- export type WebsocketClientState = "idle" | "connecting" | "reconnecting" | "open" | "closed";
28
- export type WebsocketClientEvents = {
29
- connecting: {
30
- isReconnect: boolean;
31
- attempt: number;
32
- };
33
- reconnecting: {
34
- attempt: number;
35
- delayMs: number;
36
- reason?: string;
37
- code?: number;
38
- };
39
- open: {
40
- connectionId?: string | null;
41
- };
42
- close: {
43
- code: number;
44
- reason: string;
45
- willReconnect: boolean;
46
- };
47
- error: {
48
- error: unknown;
49
- recoverable: boolean;
50
- };
51
- event: WebsocketEventPayload;
52
- ready: {
53
- connectionId: string;
54
- };
55
- auth: {
56
- connectionId: string;
57
- user: Record<string, unknown>;
58
- };
59
- messageAccepted: {
60
- requestId?: string | null;
61
- clientMessageId?: string | null;
62
- sessionId?: string | null;
63
- spaceId?: string | null;
64
- };
65
- serverError: {
66
- code?: string;
67
- message?: string;
68
- requestId?: string | null;
69
- sessionId?: string | null;
70
- spaceId?: string | null;
71
- clientMessageId?: string | null;
72
- };
73
- pong: {
74
- requestId?: string | null;
75
- };
76
- };
77
- type EventHandler<T> = (payload: T) => void;
78
- export declare class WebsocketClient {
79
- private readonly url;
80
- private readonly autoReconnect;
81
- private readonly reconnectBaseDelayMs;
82
- private readonly reconnectMaxDelayMs;
83
- private readonly pingIntervalMs;
84
- private readonly pongTimeoutMs;
85
- private readonly debug;
86
- private readonly getAccessToken?;
87
- private readonly WebSocketImpl;
88
- private ws;
89
- private pingTimer;
90
- private reconnectTimer;
91
- private reconnectTimerResolver;
92
- private reconnectAttempt;
93
- private manuallyClosed;
94
- private connectPromise;
95
- private authWaiter;
96
- private awaitingPong;
97
- private lastPingRequestId;
98
- private pongDeadlineAt;
99
- private readonly compactStreamContexts;
100
- private readonly patchStreamBuffers;
101
- state: WebsocketClientState;
102
- connectionId: string | null;
103
- private readonly listeners;
104
- constructor(options?: WebsocketClientOptions);
105
- on<K extends keyof WebsocketClientEvents>(type: K, handler: EventHandler<WebsocketClientEvents[K]>): () => void;
106
- off<K extends keyof WebsocketClientEvents>(type: K, handler: EventHandler<WebsocketClientEvents[K]>): void;
107
- private emit;
108
- private log;
109
- connect(): Promise<void>;
110
- disconnect(code?: number, reason?: string): Promise<void>;
111
- sendMessage(input: {
112
- spaceId: string;
113
- sessionId: string;
114
- content: ContentBlock[];
115
- clientMessageId?: string;
116
- requestId?: string;
117
- model?: string;
118
- provider?: string;
119
- }): Promise<void>;
120
- ack(eventId?: string, requestId?: string): void;
121
- ping(requestId?: string): void;
122
- private ensureOpen;
123
- private send;
124
- private authenticate;
125
- private createAuthWaiter;
126
- private resolveAuthWaiter;
127
- private rejectAuthWaiter;
128
- private handleMessage;
129
- private rememberCompactStreamContext;
130
- private getPatchStreamBufferKey;
131
- private handlePatchEnvelope;
132
- private enforcePatchStreamBufferLimit;
133
- private flushPatchStreamBuffer;
134
- private handleCompactFrame;
135
- private startPingLoop;
136
- private stopPingLoop;
137
- private clearReconnectTimer;
138
- private scheduleReconnect;
139
- }
140
- export declare const createWebsocketClient: (options?: WebsocketClientOptions) => WebsocketClient;
141
- export {};
1
+ import { a as WebsocketClientOptions, c as createWebsocketClient, i as WebsocketClientEvents, n as WebSocketLike, o as WebsocketClientState, r as WebsocketClient, s as WebsocketEventPayload, t as WebSocketConstructor } from "./chunks/websocket.js";
2
+ export { WebSocketConstructor, WebSocketLike, WebsocketClient, WebsocketClientEvents, WebsocketClientOptions, WebsocketClientState, WebsocketEventPayload, createWebsocketClient };