@granular-software/sdk 0.4.1 → 0.4.3

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.
@@ -111,14 +111,21 @@ interface SandboxListResponse {
111
111
  items: Sandbox[];
112
112
  }
113
113
  /**
114
- * Rules defining what tools and resources are allowed/denied
114
+ * Rules defining what effects and resources are allowed or denied.
115
115
  */
116
116
  interface PermissionRules {
117
- /** Tool access rules */
117
+ /** Effect access rules */
118
+ effects?: {
119
+ /** Patterns for allowed effects (e.g. ["*"] for all, ["read_*"] for prefix match) */
120
+ allow?: string[];
121
+ /** Patterns for denied effects */
122
+ deny?: string[];
123
+ };
124
+ /** Legacy alias accepted by the backend while migrating to `effects`. */
118
125
  tools?: {
119
- /** Patterns for allowed tools (e.g. ["*"] for all, ["read_*"] for prefix match) */
126
+ /** Patterns for allowed effects (e.g. ["*"] for all, ["read_*"] for prefix match) */
120
127
  allow?: string[];
121
- /** Patterns for denied tools */
128
+ /** Patterns for denied effects */
122
129
  deny?: string[];
123
130
  };
124
131
  /** Resource access rules */
@@ -248,17 +255,31 @@ interface BuildListResponse {
248
255
  items: Build[];
249
256
  }
250
257
  /**
251
- * Tool handler for static/global tools: receives (params)
258
+ * Effect handler for static/global effects: receives (input, context)
252
259
  */
253
- type ToolHandler = (input: any) => Promise<unknown>;
260
+ interface EffectHandlerContext {
261
+ effectClientId: string;
262
+ sandboxId: string;
263
+ environmentId: string;
264
+ sessionId: string;
265
+ tenantId?: string;
266
+ principalId?: string;
267
+ permissionProfileId?: string;
268
+ user: {
269
+ subjectId: string;
270
+ identityId?: string;
271
+ principalId?: string;
272
+ };
273
+ }
274
+ type ToolHandler = (input: any, context: EffectHandlerContext) => Promise<unknown>;
254
275
  /**
255
- * Tool handler for instance methods: receives (objectId, params)
276
+ * Effect handler for instance methods: receives (objectId, input, context)
256
277
  */
257
- type InstanceToolHandler = (id: string, input: any) => Promise<unknown>;
278
+ type InstanceToolHandler = (id: string, input: any, context: EffectHandlerContext) => Promise<unknown>;
258
279
  /**
259
- * Tool schema for publishing to the server.
280
+ * Effect schema for declaring or registering an effect.
260
281
  *
261
- * Tools come in three flavours:
282
+ * Effects come in three flavours:
262
283
  *
263
284
  * 1. **Instance methods** — set `className`, omit `static`.
264
285
  * In the sandbox: `tolkien.get_bio({ detailed: true })`
@@ -268,7 +289,7 @@ type InstanceToolHandler = (id: string, input: any) => Promise<unknown>;
268
289
  * In the sandbox: `Author.search({ query: 'tolkien' })`
269
290
  * Handler signature: `(params: any) => any`
270
291
  *
271
- * 3. **Global tools** — omit `className`.
292
+ * 3. **Global effects** — omit `className`.
272
293
  * In the sandbox: `global_search({ query: 'rings' })`
273
294
  * Handler signature: `(params: any) => any`
274
295
  *
@@ -277,9 +298,10 @@ type InstanceToolHandler = (id: string, input: any) => Promise<unknown>;
277
298
  * TypeScript declarations that sandbox code imports from `./sandbox-tools`.
278
299
  */
279
300
  interface ToolSchema {
301
+ effectKey?: string;
280
302
  name: string;
281
303
  description: string;
282
- /** JSON Schema for the tool's input parameters */
304
+ /** JSON Schema for the effect input parameters */
283
305
  inputSchema: Record<string, unknown>;
284
306
  /**
285
307
  * JSON Schema for the tool's return value.
@@ -305,9 +327,9 @@ interface ToolSchema {
305
327
  };
306
328
  tags?: string[];
307
329
  /**
308
- * The class this tool belongs to (e.g., `'author'`, `'book'`).
309
- * When set, the tool becomes a method on the auto-generated class.
310
- * Omit for global tools (standalone exported functions).
330
+ * The class this effect belongs to (e.g., `'author'`, `'book'`).
331
+ * When set, the effect becomes a method on the auto-generated class.
332
+ * Omit for global effects (standalone exported functions).
311
333
  */
312
334
  className?: string;
313
335
  /**
@@ -318,8 +340,9 @@ interface ToolSchema {
318
340
  */
319
341
  static?: boolean;
320
342
  }
343
+ type EffectSchema = ToolSchema;
321
344
  /**
322
- * Tool with handler — what users provide to `publishTools()`.
345
+ * Effect with handler — what users provide to `registerEffect()`.
323
346
  *
324
347
  * - **Instance methods** (`className` set, `static` omitted):
325
348
  * handler receives `(objectId: string, params: any)`
@@ -331,8 +354,9 @@ interface ToolSchema {
331
354
  interface ToolWithHandler extends ToolSchema {
332
355
  handler: ToolHandler | InstanceToolHandler;
333
356
  }
357
+ type EffectWithHandler = ToolWithHandler;
334
358
  /**
335
- * Result from publishing tools
359
+ * Result from publishing or synchronizing effects
336
360
  */
337
361
  interface PublishToolsResult {
338
362
  accepted: boolean;
@@ -342,6 +366,7 @@ interface PublishToolsResult {
342
366
  reason: string;
343
367
  }>;
344
368
  }
369
+ type PublishEffectsResult = PublishToolsResult;
345
370
  /**
346
371
  * Domain state response
347
372
  */
@@ -356,39 +381,48 @@ interface DomainState {
356
381
  [key: string]: unknown;
357
382
  }
358
383
  /**
359
- * Information about a published tool
384
+ * Information about a live or declared effect
360
385
  */
361
386
  interface ToolInfo {
362
- /** Unique name of the tool */
387
+ effectKey?: string;
388
+ /** Unique name of the effect */
363
389
  name: string;
364
- /** Description of what the tool does */
390
+ /** Description of what the effect does */
365
391
  description?: string;
366
- /** JSON Schema for tool input */
392
+ /** JSON Schema for effect input */
367
393
  inputSchema?: Record<string, unknown>;
368
- /** JSON Schema for tool output */
394
+ /** JSON Schema for effect output */
369
395
  outputSchema?: Record<string, unknown>;
370
- /** Client ID that published this tool (absent for domain-only entries) */
396
+ /** Client ID that published this effect (absent for domain-only entries) */
371
397
  clientId?: string;
372
- /** Whether the tool is ready for use (has a registered handler) */
398
+ /** Whether the effect is ready for use (has a registered handler) */
373
399
  ready: boolean;
374
- /** Timestamp when the tool was published */
400
+ /** Timestamp when the effect was published */
375
401
  publishedAt?: number;
376
- /** Class this tool belongs to (instance/static method) */
402
+ /** Class this effect belongs to (instance/static method) */
377
403
  className?: string;
378
404
  /** Whether this is a static method */
379
405
  static?: boolean;
380
406
  }
407
+ interface EffectInfo extends ToolInfo {
408
+ }
381
409
  /**
382
- * Event data when the list of available tools changes
410
+ * Event data when the list of available effects changes
383
411
  */
384
412
  interface ToolsChangedEvent {
385
- /** The current list of all available tools */
413
+ /** The current list of all available effects */
386
414
  tools: ToolInfo[];
387
- /** Names of tools that were added or updated */
415
+ /** Names of effects that were added or updated */
388
416
  added: string[];
389
- /** Names of tools that were removed */
417
+ /** Names of effects that were removed */
390
418
  removed: string[];
391
419
  }
420
+ interface EffectsChangedEvent extends ToolsChangedEvent {
421
+ /** The current list of all available effects */
422
+ effects: EffectInfo[];
423
+ }
424
+ type EffectHandler = ToolHandler;
425
+ type InstanceEffectHandler = InstanceToolHandler;
392
426
  type JobStatus = 'queued' | 'running' | 'succeeded' | 'failed' | 'timeout' | 'canceled';
393
427
  /**
394
428
  * Result from submitting a job
@@ -600,6 +634,24 @@ interface ManifestRelationshipDef {
600
634
  /** Whether the right side is a collection */
601
635
  rightIsMany: boolean;
602
636
  }
637
+ interface ManifestEffectSchema {
638
+ type: string;
639
+ properties?: Record<string, unknown>;
640
+ required?: string[];
641
+ items?: unknown;
642
+ description?: string;
643
+ [key: string]: unknown;
644
+ }
645
+ interface ManifestEffectDeclaration {
646
+ name: string;
647
+ description?: string;
648
+ attachedClass?: string;
649
+ isStatic?: boolean;
650
+ inputSchema: ManifestEffectSchema;
651
+ outputSchema?: ManifestEffectSchema;
652
+ stability?: 'stable' | 'experimental' | 'deprecated';
653
+ tags?: string[];
654
+ }
603
655
  /**
604
656
  * A single operation in a manifest volume
605
657
  */
@@ -616,6 +668,8 @@ interface ManifestOperation {
616
668
  has?: Record<string, ManifestPropertySpec>;
617
669
  /** Define a relationship between two classes */
618
670
  defineRelationship?: ManifestRelationshipDef;
671
+ /** Declare a build-owned effect */
672
+ withEffect?: ManifestEffectDeclaration;
619
673
  }
620
674
  /**
621
675
  * A volume in a manifest
@@ -669,4 +723,4 @@ interface DeleteResponse {
669
723
  deleted: boolean;
670
724
  }
671
725
 
672
- export type { ToolInvokeParams as $, AssignmentListResponse as A, BuildPolicy as B, ConnectOptions as C, DomainState as D, EnvironmentData as E, BuildStatus as F, GranularOptions as G, Build as H, InstanceToolHandler as I, Job as J, BuildListResponse as K, JobStatus as L, ModelRef as M, JobSubmitResult as N, Prompt as O, PublishToolsResult as P, WSDisconnectInfo as Q, RecordUserOptions as R, SandboxListResponse as S, ToolWithHandler as T, User as U, WSReconnectErrorInfo as V, WSClientOptions as W, RPCRequest as X, RPCResponse as Y, SyncMessage as Z, RPCRequestFromServer as _, ToolHandler as a, ToolResultParams as a0, ManifestPropertySpec as a1, ManifestRelationshipDef as a2, ManifestOperation as a3, ManifestImport as a4, ManifestVolume as a5, APIError as a6, ToolInfo as b, ToolsChangedEvent as c, GraphQLResult as d, DefineRelationshipOptions as e, RelationshipInfo as f, ManifestContent as g, RecordObjectOptions as h, RecordObjectResult as i, Sandbox as j, CreateSandboxData as k, DeleteResponse as l, PermissionProfile as m, CreatePermissionProfileData as n, CreateEnvironmentData as o, Subject as p, ToolSchema as q, AccessTokenProvider as r, EndpointMode as s, GranularAuth as t, PermissionRules as u, PermissionProfileListResponse as v, Assignment as w, EnvironmentListResponse as x, Manifest as y, ManifestListResponse as z };
726
+ export type { JobSubmitResult as $, AssignmentListResponse as A, BuildPolicy as B, ConnectOptions as C, DomainState as D, EffectInfo as E, Manifest as F, GranularOptions as G, ManifestListResponse as H, InstanceToolHandler as I, Job as J, BuildStatus as K, Build as L, ModelRef as M, BuildListResponse as N, EffectHandlerContext as O, PublishToolsResult as P, EffectSchema as Q, RecordUserOptions as R, SandboxListResponse as S, ToolWithHandler as T, User as U, EffectWithHandler as V, WSClientOptions as W, PublishEffectsResult as X, EffectHandler as Y, InstanceEffectHandler as Z, JobStatus as _, ToolHandler as a, Prompt as a0, WSDisconnectInfo as a1, WSReconnectErrorInfo as a2, RPCRequest as a3, RPCResponse as a4, SyncMessage as a5, RPCRequestFromServer as a6, ToolInvokeParams as a7, ToolResultParams as a8, ManifestPropertySpec as a9, ManifestRelationshipDef as aa, ManifestEffectSchema as ab, ManifestEffectDeclaration as ac, ManifestOperation as ad, ManifestImport as ae, ManifestVolume as af, APIError as ag, ToolInfo as b, EffectsChangedEvent as c, ToolsChangedEvent as d, EnvironmentData as e, GraphQLResult as f, DefineRelationshipOptions as g, RelationshipInfo as h, ManifestContent as i, RecordObjectOptions as j, RecordObjectResult as k, Sandbox as l, CreateSandboxData as m, DeleteResponse as n, PermissionProfile as o, CreatePermissionProfileData as p, CreateEnvironmentData as q, Subject as r, ToolSchema as s, AccessTokenProvider as t, EndpointMode as u, GranularAuth as v, PermissionRules as w, PermissionProfileListResponse as x, Assignment as y, EnvironmentListResponse as z };
@@ -111,14 +111,21 @@ interface SandboxListResponse {
111
111
  items: Sandbox[];
112
112
  }
113
113
  /**
114
- * Rules defining what tools and resources are allowed/denied
114
+ * Rules defining what effects and resources are allowed or denied.
115
115
  */
116
116
  interface PermissionRules {
117
- /** Tool access rules */
117
+ /** Effect access rules */
118
+ effects?: {
119
+ /** Patterns for allowed effects (e.g. ["*"] for all, ["read_*"] for prefix match) */
120
+ allow?: string[];
121
+ /** Patterns for denied effects */
122
+ deny?: string[];
123
+ };
124
+ /** Legacy alias accepted by the backend while migrating to `effects`. */
118
125
  tools?: {
119
- /** Patterns for allowed tools (e.g. ["*"] for all, ["read_*"] for prefix match) */
126
+ /** Patterns for allowed effects (e.g. ["*"] for all, ["read_*"] for prefix match) */
120
127
  allow?: string[];
121
- /** Patterns for denied tools */
128
+ /** Patterns for denied effects */
122
129
  deny?: string[];
123
130
  };
124
131
  /** Resource access rules */
@@ -248,17 +255,31 @@ interface BuildListResponse {
248
255
  items: Build[];
249
256
  }
250
257
  /**
251
- * Tool handler for static/global tools: receives (params)
258
+ * Effect handler for static/global effects: receives (input, context)
252
259
  */
253
- type ToolHandler = (input: any) => Promise<unknown>;
260
+ interface EffectHandlerContext {
261
+ effectClientId: string;
262
+ sandboxId: string;
263
+ environmentId: string;
264
+ sessionId: string;
265
+ tenantId?: string;
266
+ principalId?: string;
267
+ permissionProfileId?: string;
268
+ user: {
269
+ subjectId: string;
270
+ identityId?: string;
271
+ principalId?: string;
272
+ };
273
+ }
274
+ type ToolHandler = (input: any, context: EffectHandlerContext) => Promise<unknown>;
254
275
  /**
255
- * Tool handler for instance methods: receives (objectId, params)
276
+ * Effect handler for instance methods: receives (objectId, input, context)
256
277
  */
257
- type InstanceToolHandler = (id: string, input: any) => Promise<unknown>;
278
+ type InstanceToolHandler = (id: string, input: any, context: EffectHandlerContext) => Promise<unknown>;
258
279
  /**
259
- * Tool schema for publishing to the server.
280
+ * Effect schema for declaring or registering an effect.
260
281
  *
261
- * Tools come in three flavours:
282
+ * Effects come in three flavours:
262
283
  *
263
284
  * 1. **Instance methods** — set `className`, omit `static`.
264
285
  * In the sandbox: `tolkien.get_bio({ detailed: true })`
@@ -268,7 +289,7 @@ type InstanceToolHandler = (id: string, input: any) => Promise<unknown>;
268
289
  * In the sandbox: `Author.search({ query: 'tolkien' })`
269
290
  * Handler signature: `(params: any) => any`
270
291
  *
271
- * 3. **Global tools** — omit `className`.
292
+ * 3. **Global effects** — omit `className`.
272
293
  * In the sandbox: `global_search({ query: 'rings' })`
273
294
  * Handler signature: `(params: any) => any`
274
295
  *
@@ -277,9 +298,10 @@ type InstanceToolHandler = (id: string, input: any) => Promise<unknown>;
277
298
  * TypeScript declarations that sandbox code imports from `./sandbox-tools`.
278
299
  */
279
300
  interface ToolSchema {
301
+ effectKey?: string;
280
302
  name: string;
281
303
  description: string;
282
- /** JSON Schema for the tool's input parameters */
304
+ /** JSON Schema for the effect input parameters */
283
305
  inputSchema: Record<string, unknown>;
284
306
  /**
285
307
  * JSON Schema for the tool's return value.
@@ -305,9 +327,9 @@ interface ToolSchema {
305
327
  };
306
328
  tags?: string[];
307
329
  /**
308
- * The class this tool belongs to (e.g., `'author'`, `'book'`).
309
- * When set, the tool becomes a method on the auto-generated class.
310
- * Omit for global tools (standalone exported functions).
330
+ * The class this effect belongs to (e.g., `'author'`, `'book'`).
331
+ * When set, the effect becomes a method on the auto-generated class.
332
+ * Omit for global effects (standalone exported functions).
311
333
  */
312
334
  className?: string;
313
335
  /**
@@ -318,8 +340,9 @@ interface ToolSchema {
318
340
  */
319
341
  static?: boolean;
320
342
  }
343
+ type EffectSchema = ToolSchema;
321
344
  /**
322
- * Tool with handler — what users provide to `publishTools()`.
345
+ * Effect with handler — what users provide to `registerEffect()`.
323
346
  *
324
347
  * - **Instance methods** (`className` set, `static` omitted):
325
348
  * handler receives `(objectId: string, params: any)`
@@ -331,8 +354,9 @@ interface ToolSchema {
331
354
  interface ToolWithHandler extends ToolSchema {
332
355
  handler: ToolHandler | InstanceToolHandler;
333
356
  }
357
+ type EffectWithHandler = ToolWithHandler;
334
358
  /**
335
- * Result from publishing tools
359
+ * Result from publishing or synchronizing effects
336
360
  */
337
361
  interface PublishToolsResult {
338
362
  accepted: boolean;
@@ -342,6 +366,7 @@ interface PublishToolsResult {
342
366
  reason: string;
343
367
  }>;
344
368
  }
369
+ type PublishEffectsResult = PublishToolsResult;
345
370
  /**
346
371
  * Domain state response
347
372
  */
@@ -356,39 +381,48 @@ interface DomainState {
356
381
  [key: string]: unknown;
357
382
  }
358
383
  /**
359
- * Information about a published tool
384
+ * Information about a live or declared effect
360
385
  */
361
386
  interface ToolInfo {
362
- /** Unique name of the tool */
387
+ effectKey?: string;
388
+ /** Unique name of the effect */
363
389
  name: string;
364
- /** Description of what the tool does */
390
+ /** Description of what the effect does */
365
391
  description?: string;
366
- /** JSON Schema for tool input */
392
+ /** JSON Schema for effect input */
367
393
  inputSchema?: Record<string, unknown>;
368
- /** JSON Schema for tool output */
394
+ /** JSON Schema for effect output */
369
395
  outputSchema?: Record<string, unknown>;
370
- /** Client ID that published this tool (absent for domain-only entries) */
396
+ /** Client ID that published this effect (absent for domain-only entries) */
371
397
  clientId?: string;
372
- /** Whether the tool is ready for use (has a registered handler) */
398
+ /** Whether the effect is ready for use (has a registered handler) */
373
399
  ready: boolean;
374
- /** Timestamp when the tool was published */
400
+ /** Timestamp when the effect was published */
375
401
  publishedAt?: number;
376
- /** Class this tool belongs to (instance/static method) */
402
+ /** Class this effect belongs to (instance/static method) */
377
403
  className?: string;
378
404
  /** Whether this is a static method */
379
405
  static?: boolean;
380
406
  }
407
+ interface EffectInfo extends ToolInfo {
408
+ }
381
409
  /**
382
- * Event data when the list of available tools changes
410
+ * Event data when the list of available effects changes
383
411
  */
384
412
  interface ToolsChangedEvent {
385
- /** The current list of all available tools */
413
+ /** The current list of all available effects */
386
414
  tools: ToolInfo[];
387
- /** Names of tools that were added or updated */
415
+ /** Names of effects that were added or updated */
388
416
  added: string[];
389
- /** Names of tools that were removed */
417
+ /** Names of effects that were removed */
390
418
  removed: string[];
391
419
  }
420
+ interface EffectsChangedEvent extends ToolsChangedEvent {
421
+ /** The current list of all available effects */
422
+ effects: EffectInfo[];
423
+ }
424
+ type EffectHandler = ToolHandler;
425
+ type InstanceEffectHandler = InstanceToolHandler;
392
426
  type JobStatus = 'queued' | 'running' | 'succeeded' | 'failed' | 'timeout' | 'canceled';
393
427
  /**
394
428
  * Result from submitting a job
@@ -600,6 +634,24 @@ interface ManifestRelationshipDef {
600
634
  /** Whether the right side is a collection */
601
635
  rightIsMany: boolean;
602
636
  }
637
+ interface ManifestEffectSchema {
638
+ type: string;
639
+ properties?: Record<string, unknown>;
640
+ required?: string[];
641
+ items?: unknown;
642
+ description?: string;
643
+ [key: string]: unknown;
644
+ }
645
+ interface ManifestEffectDeclaration {
646
+ name: string;
647
+ description?: string;
648
+ attachedClass?: string;
649
+ isStatic?: boolean;
650
+ inputSchema: ManifestEffectSchema;
651
+ outputSchema?: ManifestEffectSchema;
652
+ stability?: 'stable' | 'experimental' | 'deprecated';
653
+ tags?: string[];
654
+ }
603
655
  /**
604
656
  * A single operation in a manifest volume
605
657
  */
@@ -616,6 +668,8 @@ interface ManifestOperation {
616
668
  has?: Record<string, ManifestPropertySpec>;
617
669
  /** Define a relationship between two classes */
618
670
  defineRelationship?: ManifestRelationshipDef;
671
+ /** Declare a build-owned effect */
672
+ withEffect?: ManifestEffectDeclaration;
619
673
  }
620
674
  /**
621
675
  * A volume in a manifest
@@ -669,4 +723,4 @@ interface DeleteResponse {
669
723
  deleted: boolean;
670
724
  }
671
725
 
672
- export type { ToolInvokeParams as $, AssignmentListResponse as A, BuildPolicy as B, ConnectOptions as C, DomainState as D, EnvironmentData as E, BuildStatus as F, GranularOptions as G, Build as H, InstanceToolHandler as I, Job as J, BuildListResponse as K, JobStatus as L, ModelRef as M, JobSubmitResult as N, Prompt as O, PublishToolsResult as P, WSDisconnectInfo as Q, RecordUserOptions as R, SandboxListResponse as S, ToolWithHandler as T, User as U, WSReconnectErrorInfo as V, WSClientOptions as W, RPCRequest as X, RPCResponse as Y, SyncMessage as Z, RPCRequestFromServer as _, ToolHandler as a, ToolResultParams as a0, ManifestPropertySpec as a1, ManifestRelationshipDef as a2, ManifestOperation as a3, ManifestImport as a4, ManifestVolume as a5, APIError as a6, ToolInfo as b, ToolsChangedEvent as c, GraphQLResult as d, DefineRelationshipOptions as e, RelationshipInfo as f, ManifestContent as g, RecordObjectOptions as h, RecordObjectResult as i, Sandbox as j, CreateSandboxData as k, DeleteResponse as l, PermissionProfile as m, CreatePermissionProfileData as n, CreateEnvironmentData as o, Subject as p, ToolSchema as q, AccessTokenProvider as r, EndpointMode as s, GranularAuth as t, PermissionRules as u, PermissionProfileListResponse as v, Assignment as w, EnvironmentListResponse as x, Manifest as y, ManifestListResponse as z };
726
+ export type { JobSubmitResult as $, AssignmentListResponse as A, BuildPolicy as B, ConnectOptions as C, DomainState as D, EffectInfo as E, Manifest as F, GranularOptions as G, ManifestListResponse as H, InstanceToolHandler as I, Job as J, BuildStatus as K, Build as L, ModelRef as M, BuildListResponse as N, EffectHandlerContext as O, PublishToolsResult as P, EffectSchema as Q, RecordUserOptions as R, SandboxListResponse as S, ToolWithHandler as T, User as U, EffectWithHandler as V, WSClientOptions as W, PublishEffectsResult as X, EffectHandler as Y, InstanceEffectHandler as Z, JobStatus as _, ToolHandler as a, Prompt as a0, WSDisconnectInfo as a1, WSReconnectErrorInfo as a2, RPCRequest as a3, RPCResponse as a4, SyncMessage as a5, RPCRequestFromServer as a6, ToolInvokeParams as a7, ToolResultParams as a8, ManifestPropertySpec as a9, ManifestRelationshipDef as aa, ManifestEffectSchema as ab, ManifestEffectDeclaration as ac, ManifestOperation as ad, ManifestImport as ae, ManifestVolume as af, APIError as ag, ToolInfo as b, EffectsChangedEvent as c, ToolsChangedEvent as d, EnvironmentData as e, GraphQLResult as f, DefineRelationshipOptions as g, RelationshipInfo as h, ManifestContent as i, RecordObjectOptions as j, RecordObjectResult as k, Sandbox as l, CreateSandboxData as m, DeleteResponse as n, PermissionProfile as o, CreatePermissionProfileData as p, CreateEnvironmentData as q, Subject as r, ToolSchema as s, AccessTokenProvider as t, EndpointMode as u, GranularAuth as v, PermissionRules as w, PermissionProfileListResponse as x, Assignment as y, EnvironmentListResponse as z };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@granular-software/sdk",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
4
4
  "description": "TypeScript SDK and CLI for Granular - define, build, and deploy AI sandboxes",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",