catalyst-relay 0.5.13 → 0.6.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.
package/README.md CHANGED
@@ -170,6 +170,7 @@ curl -X POST http://localhost:3000/login \
170
170
  - Query table/view data with filtering and sorting
171
171
  - Get distinct column values
172
172
  - Count rows
173
+ - Run freestyle OpenSQL queries with per-request row limits and timeouts
173
174
 
174
175
  ### Search
175
176
  - Search objects by name pattern
@@ -188,7 +189,9 @@ curl -X POST http://localhost:3000/login \
188
189
  | `asdcls` | Access Control | DCLS/DL |
189
190
  | `aclass` | ABAP Class | CLAS/OC |
190
191
  | `asprog` | ABAP Program | PROG/P |
192
+ | `asinc` | ABAP Include | PROG/I |
191
193
  | `astabldt` | Table | TABL/DT |
194
+ | `astablds` | Structure | STRU/D |
192
195
 
193
196
  ## Library Mode API Reference
194
197
 
@@ -199,21 +202,29 @@ curl -X POST http://localhost:3000/login \
199
202
  | `login()` | Authenticate and create session |
200
203
  | `logout()` | End session |
201
204
  | `refreshSession()` | Manually refresh session (keepalive) |
205
+ | `exportSessionState()` | Serialize session for transfer to another process |
206
+ | `importSessionState(state)` | Restore a previously exported session |
202
207
  | `read(objects)` | Batch read with content |
203
- | `create(object, package, transport?)` | Create new object |
204
- | `update(object, transport?)` | Update existing object |
205
- | `upsert(objects, package, transport?)` | Create or update |
206
- | `activate(objects)` | Compile and validate |
207
- | `delete(objects, transport?)` | Remove objects |
208
- | `getPackages()` | List packages |
209
- | `getPackageStats(name)` | Get package metadata and object count |
208
+ | `create(object, package, transport?)` | Create a new object |
209
+ | `update(object, transport?)` | Update an existing object |
210
+ | `upsert(objects, package, transport?)` | Create or update a batch |
211
+ | `activate(objects)` | Run-based activation; mixed extensions allowed |
212
+ | `checkSyntax(objects)` | Syntax check (single extension per batch) |
213
+ | `delete(objects, transport?)` | Multi-delete with dependency ordering; returns `DeleteResult[]` |
214
+ | `getPackages(options?)` | List packages (filter, includeDescriptions) |
215
+ | `getPackageStats(nameOrNames)` | Package description and recursive object count |
210
216
  | `getTree(query)` | Browse package tree (supports owner filter) |
211
217
  | `getTransports(package)` | List transports |
212
218
  | `createTransport(config)` | Create transport |
219
+ | `deleteTransport(id, removeObjects?)` | Delete transport (optionally clear contents first) |
220
+ | `removeFromTransport(id, objectName)` | Remove a single object from a transport |
221
+ | `viewTransportObjects(id)` | List tasks and objects on a transport |
222
+ | `getInactiveObjects()` | List objects/transports awaiting activation |
213
223
  | `previewData(query)` | Query table/view |
214
- | `getDistinctValues(object, column)` | Distinct values |
215
- | `countRows(object, type)` | Row count |
216
- | `search(query, types?)` | Search objects |
224
+ | `getDistinctValues(name, parameters, column, type?)` | Distinct values with counts |
225
+ | `countRows(name, type, parameters?)` | Row count |
226
+ | `freestyleQuery(sqlQuery, limit?, timeout?)` | Run arbitrary read-only OpenSQL; optional row limit and per-request timeout (ms) |
227
+ | `search(query, options?)` | Search objects (`{ types?, includePackages? }`) |
217
228
  | `whereUsed(object)` | Find dependencies |
218
229
  | `gitDiff(objects)` | Compare with server |
219
230
  | `getObjectConfig()` | Supported object types |
@@ -261,11 +272,11 @@ if (error) {
261
272
  #### Searching Objects
262
273
 
263
274
  ```typescript
264
- const [results, error] = await client.search('ZSNAP*', ['DDLS/DF', 'CLAS/OC']);
275
+ const [results, error] = await client.search('ZSNAP*', { types: ['DDLS', 'CLAS'] });
265
276
 
266
277
  if (!error) {
267
278
  for (const result of results) {
268
- console.log(`${result.name} (${result.type})`);
279
+ console.log(`${result.name} (${result.objectType})`);
269
280
  }
270
281
  }
271
282
  ```
@@ -281,6 +292,18 @@ const [data, error] = await client.previewData({
281
292
  });
282
293
  ```
283
294
 
295
+ #### Freestyle OpenSQL Query
296
+
297
+ For cases where the structured preview isn't enough, run an arbitrary read-only `SELECT`. This is a power-user surface — the query is not parsed or restricted beyond an optional row `limit` (max 50,000) and per-request `timeout` in milliseconds (max 5 minutes), so callers are responsible for deciding who may issue arbitrary SQL.
298
+
299
+ ```typescript
300
+ const [data, error] = await client.freestyleQuery(
301
+ "SELECT carrid, connid, fldate FROM sflight WHERE carrid = 'LH'",
302
+ 500, // optional row limit (default 100)
303
+ 60000 // optional per-request timeout in ms
304
+ );
305
+ ```
306
+
284
307
  ## Server Mode API Reference
285
308
 
286
309
  ### HTTP Endpoints
@@ -294,15 +317,21 @@ const [data, error] = await client.previewData({
294
317
  | GET | `/packages` | List available packages |
295
318
  | GET | `/packages/:name/stats` | Get package metadata and count |
296
319
  | POST | `/tree` | Browse package tree (supports owner filter) |
297
- | GET | `/transports/:package` | List transports |
320
+ | GET | `/transports/:package` | List transports for a package |
298
321
  | POST | `/transports` | Create transport |
322
+ | DELETE | `/transports/:transportId` | Delete a transport (`?removeObjects=true` to clear first) |
323
+ | GET | `/transports/:transportId/objects` | List tasks/objects on a transport |
324
+ | PUT | `/transports/:transportId/objects` | Remove a single object from a transport |
325
+ | GET | `/inactive-objects` | List objects/transports awaiting activation |
299
326
  | POST | `/objects/read` | Batch read objects |
300
327
  | POST | `/objects/upsert/:package/:transport?` | Create/update objects |
301
328
  | POST | `/objects/activate` | Activate objects |
302
- | DELETE | `/objects/:transport?` | Delete objects |
329
+ | POST | `/objects/check` | Syntax check objects |
330
+ | DELETE | `/objects/:transport?` | Multi-delete with dependency ordering |
303
331
  | POST | `/preview/data` | Query table/view data |
304
332
  | POST | `/preview/distinct` | Get distinct values |
305
333
  | POST | `/preview/count` | Count rows |
334
+ | POST | `/preview/freestyle` | Run arbitrary read-only OpenSQL |
306
335
  | POST | `/search/:query` | Search objects |
307
336
  | POST | `/where-used` | Find dependencies |
308
337
  | POST | `/git-diff` | Compare with server |
@@ -340,13 +369,26 @@ curl -X POST http://localhost:3000/preview/data \
340
369
  }'
341
370
  ```
342
371
 
372
+ #### Freestyle OpenSQL Query
373
+
374
+ ```bash
375
+ curl -X POST http://localhost:3000/preview/freestyle \
376
+ -H "Content-Type: application/json" \
377
+ -H "x-session-id: abc123" \
378
+ -d '{
379
+ "sqlQuery": "SELECT carrid, connid, fldate FROM sflight WHERE carrid = '\''LH'\''",
380
+ "limit": 500,
381
+ "timeout": 60000
382
+ }'
383
+ ```
384
+
343
385
  #### Search Objects
344
386
 
345
387
  ```bash
346
388
  curl -X POST "http://localhost:3000/search/ZSNAP*" \
347
389
  -H "Content-Type: application/json" \
348
390
  -H "x-session-id: abc123" \
349
- -d '{ "types": ["DDLS/DF", "CLAS/OC"] }'
391
+ -d '["DDLS", "CLAS"]'
350
392
  ```
351
393
 
352
394
  ## Error Handling
@@ -483,4 +525,4 @@ Egan Bosch
483
525
 
484
526
  ---
485
527
 
486
- *Last updated: v0.4.5*
528
+ *Last updated: v0.5.14*
package/dist/index.d.mts CHANGED
@@ -125,6 +125,15 @@ interface ObjectRef {
125
125
  /** File extension indicating object type (e.g., 'asddls') */
126
126
  extension: string;
127
127
  }
128
+ /**
129
+ * Behavior definition implementation type.
130
+ *
131
+ * Only managed RAP is supported today; the enum exists so callers specify the
132
+ * type explicitly and so it can be widened (unmanaged, abstract, projection) later.
133
+ */
134
+ declare enum BehaviorImplementationType {
135
+ Managed = "Managed"
136
+ }
128
137
  /**
129
138
  * Object with content for create/update operations
130
139
  */
@@ -133,6 +142,8 @@ interface ObjectContent extends ObjectRef {
133
142
  content: string;
134
143
  /** Optional description for transport */
135
144
  description?: string;
145
+ /** Implementation type for behavior definitions (.asbdef). Defaults to Managed. */
146
+ implementationType?: BehaviorImplementationType;
136
147
  }
137
148
  /**
138
149
  * Tree discovery query for hierarchical browsing
@@ -257,6 +268,10 @@ interface ObjectConfig {
257
268
  dpEndpoint?: string;
258
269
  /** Data preview parameter name (if supported) */
259
270
  dpParam?: string;
271
+ /** Extra attributes to add to the root element on create (e.g., srvd:srvdSourceType) */
272
+ rootAttributes?: Record<string, string>;
273
+ /** Inject an <adtcore:adtTemplate> block carrying the implementation type (behavior definitions) */
274
+ requiresImplementationType?: boolean;
260
275
  }
261
276
  /**
262
277
  * Result of upsert operation
@@ -307,6 +322,18 @@ interface ActivationMessage {
307
322
  line?: number;
308
323
  column?: number;
309
324
  }
325
+ /**
326
+ * A pre-resolved object reference for activation.
327
+ *
328
+ * Used for objects that aren't source-file-backed (e.g. service bindings) and so
329
+ * can't be resolved through the extension registry.
330
+ */
331
+ interface ActivationReference {
332
+ uri: string;
333
+ type: string;
334
+ name: string;
335
+ extension: string;
336
+ }
310
337
 
311
338
  /**
312
339
  * Where-Used — Find object dependencies
@@ -597,6 +624,9 @@ interface TransportObject {
597
624
 
598
625
  interface TaskContents {
599
626
  taskId: string;
627
+ owner?: string;
628
+ description?: string;
629
+ status?: string;
600
630
  objects: TransportObject[];
601
631
  }
602
632
 
@@ -637,6 +667,43 @@ interface DiffResult {
637
667
  diffs: DiffHunk[];
638
668
  }
639
669
 
670
+ /** Binding protocol. Only OData is supported today. */
671
+ type ServiceBindingType = 'ODATA';
672
+ /** Binding version. Only OData V4 (category 1) is supported today. */
673
+ type ServiceBindingVersion = 'V4';
674
+ /**
675
+ * Options for creating a service binding
676
+ */
677
+ interface CreateServiceBindingOptions {
678
+ /** Name of the service binding to create (e.g., 'ZBEACON_DOCS_O5') */
679
+ bindingName: string;
680
+ /** Name of the backing service definition (e.g., 'ZBEACON_DOCS_API') */
681
+ serviceDefinition: string;
682
+ /** Target package */
683
+ packageName: string;
684
+ /** Optional description */
685
+ description?: string;
686
+ /** Binding protocol (default: 'ODATA') */
687
+ bindingType?: ServiceBindingType;
688
+ /** Binding version (default: 'V4') */
689
+ bindingVersion?: ServiceBindingVersion;
690
+ /** Transport request (required for non-$TMP packages) */
691
+ transport?: string;
692
+ /** Whether to publish the binding after activation (default: true) */
693
+ publish?: boolean;
694
+ }
695
+ /**
696
+ * Result of creating a service binding
697
+ */
698
+ interface ServiceBindingResult {
699
+ name: string;
700
+ serviceDefinition: string;
701
+ created: boolean;
702
+ activation: ActivationResult[];
703
+ published: boolean;
704
+ publishMessage?: string;
705
+ }
706
+
640
707
  /**
641
708
  * ADT Client Core Implementation
642
709
  *
@@ -674,6 +741,7 @@ interface ADTClient {
674
741
  previewData(query: PreviewSQL): AsyncResult<DataFrame>;
675
742
  getDistinctValues(objectName: string, parameters: Parameter[], column: string, objectType?: 'table' | 'view'): AsyncResult<DistinctResult>;
676
743
  countRows(objectName: string, objectType: 'table' | 'view', parameters?: Parameter[]): AsyncResult<number>;
744
+ freestyleQuery(sqlQuery: string, limit?: number, timeout?: number): AsyncResult<DataFrame>;
677
745
  search(query: string, options?: SearchOptions): AsyncResult<SearchResult[]>;
678
746
  whereUsed(object: ObjectRef): AsyncResult<Dependency[]>;
679
747
  createTransport(config: TransportConfig): AsyncResult<string>;
@@ -681,6 +749,8 @@ interface ADTClient {
681
749
  removeFromTransport(transportId: string, objectName: string): AsyncResult<void>;
682
750
  viewTransportObjects(transportId: string): AsyncResult<TaskContents[]>;
683
751
  gitDiff(objects: ObjectContent[]): AsyncResult<DiffResult[]>;
752
+ createServiceBinding(options: CreateServiceBindingOptions): AsyncResult<ServiceBindingResult>;
753
+ deleteServiceBinding(bindingName: string, transport?: string): AsyncResult<void>;
684
754
  getObjectConfig(): ObjectConfig[];
685
755
  }
686
756
 
@@ -706,4 +776,4 @@ declare function activateLogging(): void;
706
776
  */
707
777
  declare function deactivateLogging(): void;
708
778
 
709
- export { type ADTClient, type ActivationMessage, type ActivationResult, type Aggregation, type ApiResponse, type AsyncResult, type AuthConfig, type AuthType, type BasicAuthConfig, type BasicFilter, type BetweenFilter, type CheckResult, type ClientConfig, type ColumnInfo, type DataFrame, type DataPreviewQuery, type DeleteResult, type Dependency, type DiffHunk, type DiffResult, type DistinctResult, type ErrorCode, type ErrorResponse, type ExportableSessionState, type ExternalReference, ExternalReferencesError, type FolderNode, type GetPackagesOptions, type InactiveEntry, type InactiveObject, type InactiveRef, type InactiveTransport, type ListFilter, type ModifiedDiffHunk, type ObjectConfig, type ObjectContent, type ObjectMetadata, type ObjectNode, type ObjectRef, type ObjectWithContent, type Package, type PackageNode, type Parameter, type PreviewSQL, type QueryFilter, type Result, type SamlAuthConfig, type SearchOptions, type SearchResult, type Session, type SimpleDiffHunk, type Sorting, type SsoAuthConfig, type SuccessResponse, type TaskContents, type Transport, type TransportConfig, type TransportObject, type TreeQuery, type TreeResponse, type UpsertResult, activateLogging, buildSQLQuery, createClient, deactivateLogging, err, ok };
779
+ export { type ADTClient, type ActivationMessage, type ActivationReference, type ActivationResult, type Aggregation, type ApiResponse, type AsyncResult, type AuthConfig, type AuthType, type BasicAuthConfig, type BasicFilter, BehaviorImplementationType, type BetweenFilter, type CheckResult, type ClientConfig, type ColumnInfo, type CreateServiceBindingOptions, type DataFrame, type DataPreviewQuery, type DeleteResult, type Dependency, type DiffHunk, type DiffResult, type DistinctResult, type ErrorCode, type ErrorResponse, type ExportableSessionState, type ExternalReference, ExternalReferencesError, type FolderNode, type GetPackagesOptions, type InactiveEntry, type InactiveObject, type InactiveRef, type InactiveTransport, type ListFilter, type ModifiedDiffHunk, type ObjectConfig, type ObjectContent, type ObjectMetadata, type ObjectNode, type ObjectRef, type ObjectWithContent, type Package, type PackageNode, type Parameter, type PreviewSQL, type QueryFilter, type Result, type SamlAuthConfig, type SearchOptions, type SearchResult, type ServiceBindingResult, type ServiceBindingType, type ServiceBindingVersion, type Session, type SimpleDiffHunk, type Sorting, type SsoAuthConfig, type SuccessResponse, type TaskContents, type Transport, type TransportConfig, type TransportObject, type TreeQuery, type TreeResponse, type UpsertResult, activateLogging, buildSQLQuery, createClient, deactivateLogging, err, ok };
package/dist/index.d.ts CHANGED
@@ -125,6 +125,15 @@ interface ObjectRef {
125
125
  /** File extension indicating object type (e.g., 'asddls') */
126
126
  extension: string;
127
127
  }
128
+ /**
129
+ * Behavior definition implementation type.
130
+ *
131
+ * Only managed RAP is supported today; the enum exists so callers specify the
132
+ * type explicitly and so it can be widened (unmanaged, abstract, projection) later.
133
+ */
134
+ declare enum BehaviorImplementationType {
135
+ Managed = "Managed"
136
+ }
128
137
  /**
129
138
  * Object with content for create/update operations
130
139
  */
@@ -133,6 +142,8 @@ interface ObjectContent extends ObjectRef {
133
142
  content: string;
134
143
  /** Optional description for transport */
135
144
  description?: string;
145
+ /** Implementation type for behavior definitions (.asbdef). Defaults to Managed. */
146
+ implementationType?: BehaviorImplementationType;
136
147
  }
137
148
  /**
138
149
  * Tree discovery query for hierarchical browsing
@@ -257,6 +268,10 @@ interface ObjectConfig {
257
268
  dpEndpoint?: string;
258
269
  /** Data preview parameter name (if supported) */
259
270
  dpParam?: string;
271
+ /** Extra attributes to add to the root element on create (e.g., srvd:srvdSourceType) */
272
+ rootAttributes?: Record<string, string>;
273
+ /** Inject an <adtcore:adtTemplate> block carrying the implementation type (behavior definitions) */
274
+ requiresImplementationType?: boolean;
260
275
  }
261
276
  /**
262
277
  * Result of upsert operation
@@ -307,6 +322,18 @@ interface ActivationMessage {
307
322
  line?: number;
308
323
  column?: number;
309
324
  }
325
+ /**
326
+ * A pre-resolved object reference for activation.
327
+ *
328
+ * Used for objects that aren't source-file-backed (e.g. service bindings) and so
329
+ * can't be resolved through the extension registry.
330
+ */
331
+ interface ActivationReference {
332
+ uri: string;
333
+ type: string;
334
+ name: string;
335
+ extension: string;
336
+ }
310
337
 
311
338
  /**
312
339
  * Where-Used — Find object dependencies
@@ -597,6 +624,9 @@ interface TransportObject {
597
624
 
598
625
  interface TaskContents {
599
626
  taskId: string;
627
+ owner?: string;
628
+ description?: string;
629
+ status?: string;
600
630
  objects: TransportObject[];
601
631
  }
602
632
 
@@ -637,6 +667,43 @@ interface DiffResult {
637
667
  diffs: DiffHunk[];
638
668
  }
639
669
 
670
+ /** Binding protocol. Only OData is supported today. */
671
+ type ServiceBindingType = 'ODATA';
672
+ /** Binding version. Only OData V4 (category 1) is supported today. */
673
+ type ServiceBindingVersion = 'V4';
674
+ /**
675
+ * Options for creating a service binding
676
+ */
677
+ interface CreateServiceBindingOptions {
678
+ /** Name of the service binding to create (e.g., 'ZBEACON_DOCS_O5') */
679
+ bindingName: string;
680
+ /** Name of the backing service definition (e.g., 'ZBEACON_DOCS_API') */
681
+ serviceDefinition: string;
682
+ /** Target package */
683
+ packageName: string;
684
+ /** Optional description */
685
+ description?: string;
686
+ /** Binding protocol (default: 'ODATA') */
687
+ bindingType?: ServiceBindingType;
688
+ /** Binding version (default: 'V4') */
689
+ bindingVersion?: ServiceBindingVersion;
690
+ /** Transport request (required for non-$TMP packages) */
691
+ transport?: string;
692
+ /** Whether to publish the binding after activation (default: true) */
693
+ publish?: boolean;
694
+ }
695
+ /**
696
+ * Result of creating a service binding
697
+ */
698
+ interface ServiceBindingResult {
699
+ name: string;
700
+ serviceDefinition: string;
701
+ created: boolean;
702
+ activation: ActivationResult[];
703
+ published: boolean;
704
+ publishMessage?: string;
705
+ }
706
+
640
707
  /**
641
708
  * ADT Client Core Implementation
642
709
  *
@@ -674,6 +741,7 @@ interface ADTClient {
674
741
  previewData(query: PreviewSQL): AsyncResult<DataFrame>;
675
742
  getDistinctValues(objectName: string, parameters: Parameter[], column: string, objectType?: 'table' | 'view'): AsyncResult<DistinctResult>;
676
743
  countRows(objectName: string, objectType: 'table' | 'view', parameters?: Parameter[]): AsyncResult<number>;
744
+ freestyleQuery(sqlQuery: string, limit?: number, timeout?: number): AsyncResult<DataFrame>;
677
745
  search(query: string, options?: SearchOptions): AsyncResult<SearchResult[]>;
678
746
  whereUsed(object: ObjectRef): AsyncResult<Dependency[]>;
679
747
  createTransport(config: TransportConfig): AsyncResult<string>;
@@ -681,6 +749,8 @@ interface ADTClient {
681
749
  removeFromTransport(transportId: string, objectName: string): AsyncResult<void>;
682
750
  viewTransportObjects(transportId: string): AsyncResult<TaskContents[]>;
683
751
  gitDiff(objects: ObjectContent[]): AsyncResult<DiffResult[]>;
752
+ createServiceBinding(options: CreateServiceBindingOptions): AsyncResult<ServiceBindingResult>;
753
+ deleteServiceBinding(bindingName: string, transport?: string): AsyncResult<void>;
684
754
  getObjectConfig(): ObjectConfig[];
685
755
  }
686
756
 
@@ -706,4 +776,4 @@ declare function activateLogging(): void;
706
776
  */
707
777
  declare function deactivateLogging(): void;
708
778
 
709
- export { type ADTClient, type ActivationMessage, type ActivationResult, type Aggregation, type ApiResponse, type AsyncResult, type AuthConfig, type AuthType, type BasicAuthConfig, type BasicFilter, type BetweenFilter, type CheckResult, type ClientConfig, type ColumnInfo, type DataFrame, type DataPreviewQuery, type DeleteResult, type Dependency, type DiffHunk, type DiffResult, type DistinctResult, type ErrorCode, type ErrorResponse, type ExportableSessionState, type ExternalReference, ExternalReferencesError, type FolderNode, type GetPackagesOptions, type InactiveEntry, type InactiveObject, type InactiveRef, type InactiveTransport, type ListFilter, type ModifiedDiffHunk, type ObjectConfig, type ObjectContent, type ObjectMetadata, type ObjectNode, type ObjectRef, type ObjectWithContent, type Package, type PackageNode, type Parameter, type PreviewSQL, type QueryFilter, type Result, type SamlAuthConfig, type SearchOptions, type SearchResult, type Session, type SimpleDiffHunk, type Sorting, type SsoAuthConfig, type SuccessResponse, type TaskContents, type Transport, type TransportConfig, type TransportObject, type TreeQuery, type TreeResponse, type UpsertResult, activateLogging, buildSQLQuery, createClient, deactivateLogging, err, ok };
779
+ export { type ADTClient, type ActivationMessage, type ActivationReference, type ActivationResult, type Aggregation, type ApiResponse, type AsyncResult, type AuthConfig, type AuthType, type BasicAuthConfig, type BasicFilter, BehaviorImplementationType, type BetweenFilter, type CheckResult, type ClientConfig, type ColumnInfo, type CreateServiceBindingOptions, type DataFrame, type DataPreviewQuery, type DeleteResult, type Dependency, type DiffHunk, type DiffResult, type DistinctResult, type ErrorCode, type ErrorResponse, type ExportableSessionState, type ExternalReference, ExternalReferencesError, type FolderNode, type GetPackagesOptions, type InactiveEntry, type InactiveObject, type InactiveRef, type InactiveTransport, type ListFilter, type ModifiedDiffHunk, type ObjectConfig, type ObjectContent, type ObjectMetadata, type ObjectNode, type ObjectRef, type ObjectWithContent, type Package, type PackageNode, type Parameter, type PreviewSQL, type QueryFilter, type Result, type SamlAuthConfig, type SearchOptions, type SearchResult, type ServiceBindingResult, type ServiceBindingType, type ServiceBindingVersion, type Session, type SimpleDiffHunk, type Sorting, type SsoAuthConfig, type SuccessResponse, type TaskContents, type Transport, type TransportConfig, type TransportObject, type TreeQuery, type TreeResponse, type UpsertResult, activateLogging, buildSQLQuery, createClient, deactivateLogging, err, ok };