@essentialai/cogent 1.0.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 (85) hide show
  1. package/dist/errors/bridge-error.d.ts +31 -0
  2. package/dist/errors/bridge-error.d.ts.map +1 -0
  3. package/dist/errors/bridge-error.js +45 -0
  4. package/dist/errors/bridge-error.js.map +1 -0
  5. package/dist/errors/codes.d.ts +43 -0
  6. package/dist/errors/codes.d.ts.map +1 -0
  7. package/dist/errors/codes.js +47 -0
  8. package/dist/errors/codes.js.map +1 -0
  9. package/dist/errors/http-status.d.ts +7 -0
  10. package/dist/errors/http-status.d.ts.map +1 -0
  11. package/dist/errors/http-status.js +43 -0
  12. package/dist/errors/http-status.js.map +1 -0
  13. package/dist/errors/index.d.ts +5 -0
  14. package/dist/errors/index.d.ts.map +1 -0
  15. package/dist/errors/index.js +4 -0
  16. package/dist/errors/index.js.map +1 -0
  17. package/dist/file/config.d.ts +17 -0
  18. package/dist/file/config.d.ts.map +1 -0
  19. package/dist/file/config.js +26 -0
  20. package/dist/file/config.js.map +1 -0
  21. package/dist/file/index.d.ts +27 -0
  22. package/dist/file/index.d.ts.map +1 -0
  23. package/dist/file/index.js +24 -0
  24. package/dist/file/index.js.map +1 -0
  25. package/dist/file/state.d.ts +22 -0
  26. package/dist/file/state.d.ts.map +1 -0
  27. package/dist/file/state.js +18 -0
  28. package/dist/file/state.js.map +1 -0
  29. package/dist/helpers/ids.d.ts +19 -0
  30. package/dist/helpers/ids.d.ts.map +1 -0
  31. package/dist/helpers/ids.js +26 -0
  32. package/dist/helpers/ids.js.map +1 -0
  33. package/dist/helpers/index.d.ts +3 -0
  34. package/dist/helpers/index.d.ts.map +1 -0
  35. package/dist/helpers/index.js +3 -0
  36. package/dist/helpers/index.js.map +1 -0
  37. package/dist/helpers/validation.d.ts +21 -0
  38. package/dist/helpers/validation.d.ts.map +1 -0
  39. package/dist/helpers/validation.js +34 -0
  40. package/dist/helpers/validation.js.map +1 -0
  41. package/dist/index.d.ts +6 -0
  42. package/dist/index.d.ts.map +1 -0
  43. package/dist/index.js +6 -0
  44. package/dist/index.js.map +1 -0
  45. package/dist/routes/endpoints.d.ts +41 -0
  46. package/dist/routes/endpoints.d.ts.map +1 -0
  47. package/dist/routes/endpoints.js +77 -0
  48. package/dist/routes/endpoints.js.map +1 -0
  49. package/dist/routes/index.d.ts +2 -0
  50. package/dist/routes/index.d.ts.map +1 -0
  51. package/dist/routes/index.js +2 -0
  52. package/dist/routes/index.js.map +1 -0
  53. package/dist/schemas/api-requests.d.ts +72 -0
  54. package/dist/schemas/api-requests.d.ts.map +1 -0
  55. package/dist/schemas/api-requests.js +72 -0
  56. package/dist/schemas/api-requests.js.map +1 -0
  57. package/dist/schemas/api-responses.d.ts +98 -0
  58. package/dist/schemas/api-responses.d.ts.map +1 -0
  59. package/dist/schemas/api-responses.js +83 -0
  60. package/dist/schemas/api-responses.js.map +1 -0
  61. package/dist/schemas/index.d.ts +3 -0
  62. package/dist/schemas/index.d.ts.map +1 -0
  63. package/dist/schemas/index.js +3 -0
  64. package/dist/schemas/index.js.map +1 -0
  65. package/dist/types/index.d.ts +5 -0
  66. package/dist/types/index.d.ts.map +1 -0
  67. package/dist/types/index.js +5 -0
  68. package/dist/types/index.js.map +1 -0
  69. package/dist/types/message.d.ts +19 -0
  70. package/dist/types/message.d.ts.map +1 -0
  71. package/dist/types/message.js +17 -0
  72. package/dist/types/message.js.map +1 -0
  73. package/dist/types/peer.d.ts +16 -0
  74. package/dist/types/peer.d.ts.map +1 -0
  75. package/dist/types/peer.js +14 -0
  76. package/dist/types/peer.js.map +1 -0
  77. package/dist/types/session.d.ts +14 -0
  78. package/dist/types/session.d.ts.map +1 -0
  79. package/dist/types/session.js +12 -0
  80. package/dist/types/session.js.map +1 -0
  81. package/dist/types/state.d.ts +14 -0
  82. package/dist/types/state.d.ts.map +1 -0
  83. package/dist/types/state.js +12 -0
  84. package/dist/types/state.js.map +1 -0
  85. package/package.json +50 -0
@@ -0,0 +1,41 @@
1
+ import type { z } from "zod";
2
+ import type { CreateSessionRequest, JoinSessionRequest, RegisterPeerRequest, DeregisterPeerRequest, SendMessageRequest, GetHistoryQuery, PollQuery, CreateSessionResponse, JoinSessionResponse, ListPeersResponse, SendMessageResponse, GetHistoryResponse, HealthResponse, PollResponse } from "../schemas/index.js";
3
+ import type { PeerInfo } from "../types/index.js";
4
+ /** Describes a single API endpoint's method, path, and schemas. */
5
+ export interface RouteContract<TMethod extends string = string, TPath extends string = string, TRequest extends z.ZodType | undefined = z.ZodType | undefined, TResponse extends z.ZodType | undefined = z.ZodType | undefined> {
6
+ method: TMethod;
7
+ path: TPath;
8
+ request: TRequest;
9
+ response: TResponse;
10
+ }
11
+ /** All API path patterns. Useful for both server routing and client request building. */
12
+ export declare const PATHS: {
13
+ readonly sessions: "/api/sessions";
14
+ readonly session: "/api/sessions/:sessionId";
15
+ readonly join: "/api/sessions/:sessionId/join";
16
+ readonly peers: "/api/sessions/:sessionId/peers";
17
+ readonly peer: "/api/sessions/:sessionId/peers/:peerId";
18
+ readonly messages: "/api/sessions/:sessionId/messages";
19
+ readonly health: "/api/health";
20
+ readonly poll: "/api/sessions/:sessionId/poll";
21
+ readonly ws: "/ws/:sessionId";
22
+ };
23
+ /** Full typed API contract object shape. */
24
+ export interface ApiContract {
25
+ readonly createSession: RouteContract<"POST", "/api/sessions", z.ZodType<CreateSessionRequest>, z.ZodType<CreateSessionResponse>>;
26
+ readonly joinSession: RouteContract<"POST", "/api/sessions/:sessionId/join", z.ZodType<JoinSessionRequest>, z.ZodType<JoinSessionResponse>>;
27
+ readonly registerPeer: RouteContract<"POST", "/api/sessions/:sessionId/peers", z.ZodType<RegisterPeerRequest>, z.ZodType<PeerInfo>>;
28
+ readonly deregisterPeer: RouteContract<"DELETE", "/api/sessions/:sessionId/peers/:peerId", z.ZodType<DeregisterPeerRequest>, undefined>;
29
+ readonly listPeers: RouteContract<"GET", "/api/sessions/:sessionId/peers", undefined, z.ZodType<ListPeersResponse>>;
30
+ readonly sendMessage: RouteContract<"POST", "/api/sessions/:sessionId/messages", z.ZodType<SendMessageRequest>, z.ZodType<SendMessageResponse>>;
31
+ readonly getHistory: RouteContract<"GET", "/api/sessions/:sessionId/messages", z.ZodType<GetHistoryQuery>, z.ZodType<GetHistoryResponse>>;
32
+ readonly health: RouteContract<"GET", "/api/health", undefined, z.ZodType<HealthResponse>>;
33
+ readonly poll: RouteContract<"GET", "/api/sessions/:sessionId/poll", z.ZodType<PollQuery>, z.ZodType<PollResponse>>;
34
+ }
35
+ /**
36
+ * Typed route contracts mapping every API endpoint to its HTTP method, path,
37
+ * request schema, and response schema. Used by both server (routing) and
38
+ * client (request building + response validation).
39
+ */
40
+ export declare const API: ApiContract;
41
+ //# sourceMappingURL=endpoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoints.d.ts","sourceRoot":"","sources":["../../src/routes/endpoints.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import { CreateSessionRequestSchema, JoinSessionRequestSchema, RegisterPeerRequestSchema, DeregisterPeerRequestSchema, SendMessageRequestSchema, GetHistoryQuerySchema, PollQuerySchema, CreateSessionResponseSchema, JoinSessionResponseSchema, RegisterPeerResponseSchema, ListPeersResponseSchema, SendMessageResponseSchema, GetHistoryResponseSchema, HealthResponseSchema, PollResponseSchema, } from "../schemas/index.js";
2
+ // --- Path constants ---
3
+ /** All API path patterns. Useful for both server routing and client request building. */
4
+ export const PATHS = {
5
+ sessions: "/api/sessions",
6
+ session: "/api/sessions/:sessionId",
7
+ join: "/api/sessions/:sessionId/join",
8
+ peers: "/api/sessions/:sessionId/peers",
9
+ peer: "/api/sessions/:sessionId/peers/:peerId",
10
+ messages: "/api/sessions/:sessionId/messages",
11
+ health: "/api/health",
12
+ poll: "/api/sessions/:sessionId/poll",
13
+ ws: "/ws/:sessionId",
14
+ };
15
+ // --- API route contract object ---
16
+ /**
17
+ * Typed route contracts mapping every API endpoint to its HTTP method, path,
18
+ * request schema, and response schema. Used by both server (routing) and
19
+ * client (request building + response validation).
20
+ */
21
+ export const API = {
22
+ createSession: {
23
+ method: "POST",
24
+ path: PATHS.sessions,
25
+ request: CreateSessionRequestSchema,
26
+ response: CreateSessionResponseSchema,
27
+ },
28
+ joinSession: {
29
+ method: "POST",
30
+ path: PATHS.join,
31
+ request: JoinSessionRequestSchema,
32
+ response: JoinSessionResponseSchema,
33
+ },
34
+ registerPeer: {
35
+ method: "POST",
36
+ path: PATHS.peers,
37
+ request: RegisterPeerRequestSchema,
38
+ response: RegisterPeerResponseSchema,
39
+ },
40
+ deregisterPeer: {
41
+ method: "DELETE",
42
+ path: PATHS.peer,
43
+ request: DeregisterPeerRequestSchema,
44
+ response: undefined,
45
+ },
46
+ listPeers: {
47
+ method: "GET",
48
+ path: PATHS.peers,
49
+ request: undefined,
50
+ response: ListPeersResponseSchema,
51
+ },
52
+ sendMessage: {
53
+ method: "POST",
54
+ path: PATHS.messages,
55
+ request: SendMessageRequestSchema,
56
+ response: SendMessageResponseSchema,
57
+ },
58
+ getHistory: {
59
+ method: "GET",
60
+ path: PATHS.messages,
61
+ request: GetHistoryQuerySchema,
62
+ response: GetHistoryResponseSchema,
63
+ },
64
+ health: {
65
+ method: "GET",
66
+ path: PATHS.health,
67
+ request: undefined,
68
+ response: HealthResponseSchema,
69
+ },
70
+ poll: {
71
+ method: "GET",
72
+ path: PATHS.poll,
73
+ request: PollQuerySchema,
74
+ response: PollResponseSchema,
75
+ },
76
+ };
77
+ //# sourceMappingURL=endpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../src/routes/endpoints.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACxB,qBAAqB,EACrB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,0BAA0B,EAC1B,uBAAuB,EACvB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAkC7B,yBAAyB;AAEzB,yFAAyF;AACzF,MAAM,CAAC,MAAM,KAAK,GAUd;IACF,QAAQ,EAAE,eAAe;IACzB,OAAO,EAAE,0BAA0B;IACnC,IAAI,EAAE,+BAA+B;IACrC,KAAK,EAAE,gCAAgC;IACvC,IAAI,EAAE,wCAAwC;IAC9C,QAAQ,EAAE,mCAAmC;IAC7C,MAAM,EAAE,aAAa;IACrB,IAAI,EAAE,+BAA+B;IACrC,EAAE,EAAE,gBAAgB;CACrB,CAAC;AAiBF,oCAAoC;AAEpC;;;;GAIG;AACH,MAAM,CAAC,MAAM,GAAG,GAAgB;IAC9B,aAAa,EAAE;QACb,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,KAAK,CAAC,QAAQ;QACpB,OAAO,EAAE,0BAA0B;QACnC,QAAQ,EAAE,2BAA2B;KACtC;IAED,WAAW,EAAE;QACX,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,wBAAwB;QACjC,QAAQ,EAAE,yBAAyB;KACpC;IAED,YAAY,EAAE;QACZ,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,KAAK,CAAC,KAAK;QACjB,OAAO,EAAE,yBAAyB;QAClC,QAAQ,EAAE,0BAA0B;KACrC;IAED,cAAc,EAAE;QACd,MAAM,EAAE,QAAQ;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,2BAA2B;QACpC,QAAQ,EAAE,SAAS;KACpB;IAED,SAAS,EAAE;QACT,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,KAAK,CAAC,KAAK;QACjB,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,uBAAuB;KAClC;IAED,WAAW,EAAE;QACX,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,KAAK,CAAC,QAAQ;QACpB,OAAO,EAAE,wBAAwB;QACjC,QAAQ,EAAE,yBAAyB;KACpC;IAED,UAAU,EAAE;QACV,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,KAAK,CAAC,QAAQ;QACpB,OAAO,EAAE,qBAAqB;QAC9B,QAAQ,EAAE,wBAAwB;KACnC;IAED,MAAM,EAAE;QACN,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,KAAK,CAAC,MAAM;QAClB,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,oBAAoB;KAC/B;IAED,IAAI,EAAE;QACJ,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,eAAe;QACxB,QAAQ,EAAE,kBAAkB;KAC7B;CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { API, PATHS, type RouteContract, type ApiContract } from "./endpoints.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,aAAa,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { API, PATHS } from "./endpoints.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAwC,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { z } from "zod";
2
+ /** Request body for creating a new bridge session. */
3
+ export interface CreateSessionRequest {
4
+ label?: string;
5
+ secret: string;
6
+ }
7
+ /** Request body for joining an existing session. */
8
+ export interface JoinSessionRequest {
9
+ secret: string;
10
+ }
11
+ /** Request body for registering a peer in a session. */
12
+ export interface RegisterPeerRequest {
13
+ peerId: string;
14
+ cwd: string;
15
+ label: string;
16
+ }
17
+ /** Request body for deregistering a peer (empty -- IDs come from URL path). */
18
+ export interface DeregisterPeerRequest {
19
+ }
20
+ /** Request body for sending a message between peers. */
21
+ export interface SendMessageRequest {
22
+ fromPeerId: string;
23
+ toPeerId: string;
24
+ message: string;
25
+ }
26
+ /** Query parameters for message history retrieval. */
27
+ export interface GetHistoryQuery {
28
+ peerId?: string;
29
+ limit?: number;
30
+ offset?: number;
31
+ }
32
+ /** Query parameters for polling fallback. */
33
+ export interface PollQuery {
34
+ lastMessageId?: string;
35
+ peerId: string;
36
+ }
37
+ /**
38
+ * Schema for POST /api/sessions request body.
39
+ * Creates a new bridge session with a shared secret.
40
+ */
41
+ export declare const CreateSessionRequestSchema: z.ZodType<CreateSessionRequest>;
42
+ /**
43
+ * Schema for POST /api/sessions/:sessionId/join request body.
44
+ * Joins an existing session by providing the shared secret.
45
+ */
46
+ export declare const JoinSessionRequestSchema: z.ZodType<JoinSessionRequest>;
47
+ /**
48
+ * Schema for POST /api/sessions/:sessionId/peers request body.
49
+ * Registers a new peer in a session. sessionId comes from URL path.
50
+ */
51
+ export declare const RegisterPeerRequestSchema: z.ZodType<RegisterPeerRequest>;
52
+ /**
53
+ * Schema for DELETE /api/sessions/:sessionId/peers/:peerId request body.
54
+ * Empty body -- peerId and sessionId come from URL path params.
55
+ */
56
+ export declare const DeregisterPeerRequestSchema: z.ZodType<DeregisterPeerRequest>;
57
+ /**
58
+ * Schema for POST /api/sessions/:sessionId/messages request body.
59
+ * Sends a message from one peer to another (or broadcast via toPeerId: "*").
60
+ */
61
+ export declare const SendMessageRequestSchema: z.ZodType<SendMessageRequest>;
62
+ /**
63
+ * Schema for GET /api/sessions/:sessionId/messages query parameters.
64
+ * Supports filtering and pagination for message history.
65
+ */
66
+ export declare const GetHistoryQuerySchema: z.ZodType<GetHistoryQuery>;
67
+ /**
68
+ * Schema for GET /api/sessions/:sessionId/poll query parameters.
69
+ * Used for long-polling fallback when WebSocket is unavailable.
70
+ */
71
+ export declare const PollQuerySchema: z.ZodType<PollQuery>;
72
+ //# sourceMappingURL=api-requests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-requests.d.ts","sourceRoot":"","sources":["../../src/schemas/api-requests.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,sDAAsD;AACtD,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,oDAAoD;AACpD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wDAAwD;AACxD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,+EAA+E;AAC/E,MAAM,WAAW,qBAAqB;CAAG;AAEzC,wDAAwD;AACxD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,6CAA6C;AAC7C,MAAM,WAAW,SAAS;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAID;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAK5D,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAIxD,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAM1D,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,2BAA2B,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAE9D,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAMxD,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,eAAe,CAMlD,CAAC;AAEZ;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAKtC,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { z } from "zod";
2
+ // --- Zod schemas (source of truth) ---
3
+ /**
4
+ * Schema for POST /api/sessions request body.
5
+ * Creates a new bridge session with a shared secret.
6
+ */
7
+ export const CreateSessionRequestSchema = z
8
+ .object({
9
+ label: z.string().optional().describe("Optional human-readable session label"),
10
+ secret: z.string().min(8).describe("Shared secret for joining the session (min 8 chars)"),
11
+ })
12
+ .strict();
13
+ /**
14
+ * Schema for POST /api/sessions/:sessionId/join request body.
15
+ * Joins an existing session by providing the shared secret.
16
+ */
17
+ export const JoinSessionRequestSchema = z
18
+ .object({
19
+ secret: z.string().min(1).describe("Shared secret for the session"),
20
+ })
21
+ .strict();
22
+ /**
23
+ * Schema for POST /api/sessions/:sessionId/peers request body.
24
+ * Registers a new peer in a session. sessionId comes from URL path.
25
+ */
26
+ export const RegisterPeerRequestSchema = z
27
+ .object({
28
+ peerId: z.string().min(1).describe("Unique peer identifier"),
29
+ cwd: z.string().describe("Peer working directory path"),
30
+ label: z.string().describe("Human-readable peer label"),
31
+ })
32
+ .strict();
33
+ /**
34
+ * Schema for DELETE /api/sessions/:sessionId/peers/:peerId request body.
35
+ * Empty body -- peerId and sessionId come from URL path params.
36
+ */
37
+ export const DeregisterPeerRequestSchema = z
38
+ .object({})
39
+ .strict();
40
+ /**
41
+ * Schema for POST /api/sessions/:sessionId/messages request body.
42
+ * Sends a message from one peer to another (or broadcast via toPeerId: "*").
43
+ */
44
+ export const SendMessageRequestSchema = z
45
+ .object({
46
+ fromPeerId: z.string().min(1).describe("Sender peer ID"),
47
+ toPeerId: z.string().min(1).describe("Recipient peer ID (use '*' for broadcast)"),
48
+ message: z.string().min(1).describe("Message content"),
49
+ })
50
+ .strict();
51
+ /**
52
+ * Schema for GET /api/sessions/:sessionId/messages query parameters.
53
+ * Supports filtering and pagination for message history.
54
+ */
55
+ export const GetHistoryQuerySchema = z
56
+ .object({
57
+ peerId: z.string().optional().describe("Filter messages by peer ID"),
58
+ limit: z.coerce.number().int().min(1).max(1000).optional().default(100).describe("Max messages to return"),
59
+ offset: z.coerce.number().int().min(0).optional().default(0).describe("Number of messages to skip"),
60
+ })
61
+ .strict();
62
+ /**
63
+ * Schema for GET /api/sessions/:sessionId/poll query parameters.
64
+ * Used for long-polling fallback when WebSocket is unavailable.
65
+ */
66
+ export const PollQuerySchema = z
67
+ .object({
68
+ lastMessageId: z.string().optional().describe("Last seen message ID for delta fetch"),
69
+ peerId: z.string().min(1).describe("Polling peer's ID"),
70
+ })
71
+ .strict();
72
+ //# sourceMappingURL=api-requests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-requests.js","sourceRoot":"","sources":["../../src/schemas/api-requests.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,98 @@
1
+ import { z } from "zod";
2
+ import type { PeerInfo } from "../types/index.js";
3
+ import type { MessageRecord } from "../types/index.js";
4
+ import type { BridgeErrorPayload } from "../errors/index.js";
5
+ /** Response body for session creation. */
6
+ export interface CreateSessionResponse {
7
+ sessionId: string;
8
+ token: string;
9
+ createdAt: string;
10
+ }
11
+ /** Response body for joining a session. */
12
+ export interface JoinSessionResponse {
13
+ sessionId: string;
14
+ token: string;
15
+ peerCount: number;
16
+ }
17
+ /** Response body for listing peers in a session. */
18
+ export interface ListPeersResponse {
19
+ peers: PeerInfo[];
20
+ }
21
+ /** Response body for sending a message. */
22
+ export interface SendMessageResponse {
23
+ id: string;
24
+ success: boolean;
25
+ timestamp: string;
26
+ }
27
+ /** Response body for message history retrieval. */
28
+ export interface GetHistoryResponse {
29
+ messages: MessageRecord[];
30
+ total: number;
31
+ }
32
+ /** Response body for health check endpoint. */
33
+ export interface HealthResponse {
34
+ status: "ok" | "degraded" | "error";
35
+ uptime: number;
36
+ version: string;
37
+ activeSessions: number;
38
+ connectedPeers: number;
39
+ }
40
+ /** A peer lifecycle event in a poll response. */
41
+ export interface PeerEvent {
42
+ type: "peer_connected" | "peer_disconnected";
43
+ peerId: string;
44
+ timestamp: string;
45
+ }
46
+ /** Response body for polling fallback. */
47
+ export interface PollResponse {
48
+ messages: MessageRecord[];
49
+ events: PeerEvent[];
50
+ }
51
+ /**
52
+ * Response for POST /api/sessions.
53
+ * Returns the new session ID, a bearer token, and creation timestamp.
54
+ */
55
+ export declare const CreateSessionResponseSchema: z.ZodType<CreateSessionResponse>;
56
+ /**
57
+ * Response for POST /api/sessions/:sessionId/join.
58
+ * Returns the session ID, a new bearer token, and current peer count.
59
+ */
60
+ export declare const JoinSessionResponseSchema: z.ZodType<JoinSessionResponse>;
61
+ /**
62
+ * Response for POST /api/sessions/:sessionId/peers.
63
+ * Returns the full PeerInfo object for the newly registered peer.
64
+ */
65
+ export declare const RegisterPeerResponseSchema: z.ZodType<PeerInfo>;
66
+ /**
67
+ * Response for GET /api/sessions/:sessionId/peers.
68
+ * Returns the list of all active peers in the session.
69
+ */
70
+ export declare const ListPeersResponseSchema: z.ZodType<ListPeersResponse>;
71
+ /**
72
+ * Response for POST /api/sessions/:sessionId/messages.
73
+ * Confirms message delivery with message ID, success flag, and timestamp.
74
+ */
75
+ export declare const SendMessageResponseSchema: z.ZodType<SendMessageResponse>;
76
+ /**
77
+ * Response for GET /api/sessions/:sessionId/messages.
78
+ * Returns paginated message history with total count.
79
+ */
80
+ export declare const GetHistoryResponseSchema: z.ZodType<GetHistoryResponse>;
81
+ /**
82
+ * Response for GET /api/health.
83
+ * Server health status with uptime and aggregate counts.
84
+ */
85
+ export declare const HealthResponseSchema: z.ZodType<HealthResponse>;
86
+ /** Schema for peer lifecycle events within a poll response. */
87
+ export declare const PeerEventSchema: z.ZodType<PeerEvent>;
88
+ /**
89
+ * Response for GET /api/sessions/:sessionId/poll.
90
+ * Returns new messages and peer lifecycle events since last poll.
91
+ */
92
+ export declare const PollResponseSchema: z.ZodType<PollResponse>;
93
+ /**
94
+ * Standard error response envelope.
95
+ * Re-exports BridgeErrorSchema from errors module.
96
+ */
97
+ export declare const ErrorResponseSchema: z.ZodType<BridgeErrorPayload>;
98
+ //# sourceMappingURL=api-responses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-responses.d.ts","sourceRoot":"","sources":["../../src/schemas/api-responses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAI7D,0CAA0C;AAC1C,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,2CAA2C;AAC3C,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,oDAAoD;AACpD,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,2CAA2C;AAC3C,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,mDAAmD;AACnD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,+CAA+C;AAC/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,IAAI,GAAG,UAAU,GAAG,OAAO,CAAC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,iDAAiD;AACjD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,gBAAgB,GAAG,mBAAmB,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,0CAA0C;AAC1C,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAID;;;GAGG;AACH,eAAO,MAAM,2BAA2B,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAIvE,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAInE,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAkB,CAAC;AAE9E;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAE/D,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,yBAAyB,EAAE,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAInE,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAGjE,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAMzD,CAAC;AAEH,+DAA+D;AAC/D,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAI/C,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAGrD,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAqB,CAAC"}
@@ -0,0 +1,83 @@
1
+ import { z } from "zod";
2
+ import { PeerInfoSchema } from "../types/index.js";
3
+ import { MessageRecordSchema } from "../types/index.js";
4
+ import { BridgeErrorSchema } from "../errors/index.js";
5
+ // --- Zod schemas (source of truth) ---
6
+ /**
7
+ * Response for POST /api/sessions.
8
+ * Returns the new session ID, a bearer token, and creation timestamp.
9
+ */
10
+ export const CreateSessionResponseSchema = z.object({
11
+ sessionId: z.string().describe("Unique session identifier"),
12
+ token: z.string().describe("Bearer token for subsequent requests"),
13
+ createdAt: z.string().datetime().describe("ISO 8601 creation timestamp"),
14
+ });
15
+ /**
16
+ * Response for POST /api/sessions/:sessionId/join.
17
+ * Returns the session ID, a new bearer token, and current peer count.
18
+ */
19
+ export const JoinSessionResponseSchema = z.object({
20
+ sessionId: z.string().describe("Session that was joined"),
21
+ token: z.string().describe("Bearer token for subsequent requests"),
22
+ peerCount: z.number().int().min(0).describe("Current number of peers in session"),
23
+ });
24
+ /**
25
+ * Response for POST /api/sessions/:sessionId/peers.
26
+ * Returns the full PeerInfo object for the newly registered peer.
27
+ */
28
+ export const RegisterPeerResponseSchema = PeerInfoSchema;
29
+ /**
30
+ * Response for GET /api/sessions/:sessionId/peers.
31
+ * Returns the list of all active peers in the session.
32
+ */
33
+ export const ListPeersResponseSchema = z.object({
34
+ peers: z.array(PeerInfoSchema).describe("List of active peers"),
35
+ });
36
+ /**
37
+ * Response for POST /api/sessions/:sessionId/messages.
38
+ * Confirms message delivery with message ID, success flag, and timestamp.
39
+ */
40
+ export const SendMessageResponseSchema = z.object({
41
+ id: z.string().uuid().describe("Assigned message ID"),
42
+ success: z.boolean().describe("Whether delivery succeeded"),
43
+ timestamp: z.string().datetime().describe("ISO 8601 delivery timestamp"),
44
+ });
45
+ /**
46
+ * Response for GET /api/sessions/:sessionId/messages.
47
+ * Returns paginated message history with total count.
48
+ */
49
+ export const GetHistoryResponseSchema = z.object({
50
+ messages: z.array(MessageRecordSchema).describe("Message records"),
51
+ total: z.number().int().min(0).describe("Total messages matching query"),
52
+ });
53
+ /**
54
+ * Response for GET /api/health.
55
+ * Server health status with uptime and aggregate counts.
56
+ */
57
+ export const HealthResponseSchema = z.object({
58
+ status: z.enum(["ok", "degraded", "error"]).describe("Server health status"),
59
+ uptime: z.number().min(0).describe("Server uptime in seconds"),
60
+ version: z.string().describe("Server version string"),
61
+ activeSessions: z.number().int().min(0).describe("Number of active sessions"),
62
+ connectedPeers: z.number().int().min(0).describe("Total connected peers across sessions"),
63
+ });
64
+ /** Schema for peer lifecycle events within a poll response. */
65
+ export const PeerEventSchema = z.object({
66
+ type: z.enum(["peer_connected", "peer_disconnected"]).describe("Event type"),
67
+ peerId: z.string().describe("Peer involved in the event"),
68
+ timestamp: z.string().datetime().describe("ISO 8601 event timestamp"),
69
+ });
70
+ /**
71
+ * Response for GET /api/sessions/:sessionId/poll.
72
+ * Returns new messages and peer lifecycle events since last poll.
73
+ */
74
+ export const PollResponseSchema = z.object({
75
+ messages: z.array(MessageRecordSchema).describe("New messages since last poll"),
76
+ events: z.array(PeerEventSchema).describe("Peer lifecycle events since last poll"),
77
+ });
78
+ /**
79
+ * Standard error response envelope.
80
+ * Re-exports BridgeErrorSchema from errors module.
81
+ */
82
+ export const ErrorResponseSchema = BridgeErrorSchema;
83
+ //# sourceMappingURL=api-responses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api-responses.js","sourceRoot":"","sources":["../../src/schemas/api-responses.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export { CreateSessionRequestSchema, type CreateSessionRequest, JoinSessionRequestSchema, type JoinSessionRequest, RegisterPeerRequestSchema, type RegisterPeerRequest, DeregisterPeerRequestSchema, type DeregisterPeerRequest, SendMessageRequestSchema, type SendMessageRequest, GetHistoryQuerySchema, type GetHistoryQuery, PollQuerySchema, type PollQuery, } from "./api-requests.js";
2
+ export { CreateSessionResponseSchema, type CreateSessionResponse, JoinSessionResponseSchema, type JoinSessionResponse, RegisterPeerResponseSchema, ListPeersResponseSchema, type ListPeersResponse, SendMessageResponseSchema, type SendMessageResponse, GetHistoryResponseSchema, type GetHistoryResponse, HealthResponseSchema, type HealthResponse, PeerEventSchema, type PeerEvent, PollResponseSchema, type PollResponse, ErrorResponseSchema, } from "./api-responses.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAC1B,KAAK,oBAAoB,EACzB,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,yBAAyB,EACzB,KAAK,mBAAmB,EACxB,2BAA2B,EAC3B,KAAK,qBAAqB,EAC1B,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,qBAAqB,EACrB,KAAK,eAAe,EACpB,eAAe,EACf,KAAK,SAAS,GACf,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,EAC3B,KAAK,qBAAqB,EAC1B,yBAAyB,EACzB,KAAK,mBAAmB,EACxB,0BAA0B,EAC1B,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,yBAAyB,EACzB,KAAK,mBAAmB,EACxB,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,oBAAoB,EACpB,KAAK,cAAc,EACnB,eAAe,EACf,KAAK,SAAS,EACd,kBAAkB,EAClB,KAAK,YAAY,EACjB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { CreateSessionRequestSchema, JoinSessionRequestSchema, RegisterPeerRequestSchema, DeregisterPeerRequestSchema, SendMessageRequestSchema, GetHistoryQuerySchema, PollQuerySchema, } from "./api-requests.js";
2
+ export { CreateSessionResponseSchema, JoinSessionResponseSchema, RegisterPeerResponseSchema, ListPeersResponseSchema, SendMessageResponseSchema, GetHistoryResponseSchema, HealthResponseSchema, PeerEventSchema, PollResponseSchema, ErrorResponseSchema, } from "./api-responses.js";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,0BAA0B,EAE1B,wBAAwB,EAExB,yBAAyB,EAEzB,2BAA2B,EAE3B,wBAAwB,EAExB,qBAAqB,EAErB,eAAe,GAEhB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,2BAA2B,EAE3B,yBAAyB,EAEzB,0BAA0B,EAC1B,uBAAuB,EAEvB,yBAAyB,EAEzB,wBAAwB,EAExB,oBAAoB,EAEpB,eAAe,EAEf,kBAAkB,EAElB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { PeerInfoSchema, type PeerInfo } from "./peer.js";
2
+ export { MessageRecordSchema, type MessageRecord } from "./message.js";
3
+ export { SessionInfoSchema, type SessionInfo } from "./session.js";
4
+ export { BridgeStateSchema, type BridgeState } from "./state.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { PeerInfoSchema } from "./peer.js";
2
+ export { MessageRecordSchema } from "./message.js";
3
+ export { SessionInfoSchema } from "./session.js";
4
+ export { BridgeStateSchema } from "./state.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAiB,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAsB,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAoB,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { z } from "zod";
2
+ /** Output shape for MessageRecord schema -- used for isolatedDeclarations compatibility. */
3
+ export interface MessageRecord {
4
+ id: string;
5
+ fromPeerId: string;
6
+ toPeerId: string;
7
+ message: string;
8
+ response: string | null;
9
+ timestamp: string;
10
+ durationMs: number | null;
11
+ success: boolean;
12
+ error: string | null;
13
+ }
14
+ /**
15
+ * MessageRecord schema -- describes a message exchanged between peers.
16
+ * Migrated from cogent-bridge src/types.ts MessageRecord interface.
17
+ */
18
+ export declare const MessageRecordSchema: z.ZodType<MessageRecord>;
19
+ //# sourceMappingURL=message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.d.ts","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,4FAA4F;AAC5F,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,CAUvD,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * MessageRecord schema -- describes a message exchanged between peers.
4
+ * Migrated from cogent-bridge src/types.ts MessageRecord interface.
5
+ */
6
+ export const MessageRecordSchema = z.object({
7
+ id: z.string().uuid().describe("Unique message identifier"),
8
+ fromPeerId: z.string().min(1).describe("Sender peer ID"),
9
+ toPeerId: z.string().min(1).describe("Recipient peer ID"),
10
+ message: z.string().describe("Message content"),
11
+ response: z.string().nullable().describe("Response from target peer"),
12
+ timestamp: z.string().datetime().describe("ISO 8601 message timestamp"),
13
+ durationMs: z.number().nullable().describe("Round-trip duration in ms"),
14
+ success: z.boolean().describe("Whether delivery succeeded"),
15
+ error: z.string().nullable().describe("Error message if delivery failed"),
16
+ });
17
+ //# sourceMappingURL=message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAexB;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAA6B,CAAC,CAAC,MAAM,CAAC;IACpE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC3D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACxD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACzD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IAC/C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACrE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IACvE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IACvE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC3D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;CAC1E,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { z } from "zod";
2
+ /** Output shape for PeerInfo schema -- used for isolatedDeclarations compatibility. */
3
+ export interface PeerInfo {
4
+ peerId: string;
5
+ sessionId: string;
6
+ cwd: string;
7
+ label: string;
8
+ registeredAt: string;
9
+ lastSeenAt: string;
10
+ }
11
+ /**
12
+ * PeerInfo schema -- describes a registered peer in a bridge session.
13
+ * Migrated from cogent-bridge src/types.ts PeerInfo interface.
14
+ */
15
+ export declare const PeerInfoSchema: z.ZodType<PeerInfo>;
16
+ //# sourceMappingURL=peer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"peer.d.ts","sourceRoot":"","sources":["../../src/types/peer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,uFAAuF;AACvF,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAO7C,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * PeerInfo schema -- describes a registered peer in a bridge session.
4
+ * Migrated from cogent-bridge src/types.ts PeerInfo interface.
5
+ */
6
+ export const PeerInfoSchema = z.object({
7
+ peerId: z.string().min(1).describe("Unique identifier for this peer"),
8
+ sessionId: z.string().min(1).describe("Session this peer belongs to"),
9
+ cwd: z.string().describe("Working directory path"),
10
+ label: z.string().describe("Human-readable label"),
11
+ registeredAt: z.string().datetime().describe("ISO 8601 registration timestamp"),
12
+ lastSeenAt: z.string().datetime().describe("ISO 8601 last activity timestamp"),
13
+ });
14
+ //# sourceMappingURL=peer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"peer.js","sourceRoot":"","sources":["../../src/types/peer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAYxB;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAwB,CAAC,CAAC,MAAM,CAAC;IAC1D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IACrE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACrE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IAClD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;IAClD,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;IAC/E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;CAC/E,CAAC,CAAC"}