@fusebase/dashboard-service-sdk 1.23.3-client.10

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 (80) hide show
  1. package/README.md +52 -0
  2. package/dist/apis/CustomDashboardRowsApi.d.ts +113 -0
  3. package/dist/apis/CustomDashboardRowsApi.js +122 -0
  4. package/dist/apis/DashboardDataApi.d.ts +98 -0
  5. package/dist/apis/DashboardDataApi.js +91 -0
  6. package/dist/apis/DashboardRelationsApi.d.ts +92 -0
  7. package/dist/apis/DashboardRelationsApi.js +117 -0
  8. package/dist/apis/DashboardsApi.d.ts +395 -0
  9. package/dist/apis/DashboardsApi.js +493 -0
  10. package/dist/apis/DatabasesApi.d.ts +134 -0
  11. package/dist/apis/DatabasesApi.js +162 -0
  12. package/dist/apis/HealthApi.d.ts +19 -0
  13. package/dist/apis/HealthApi.js +28 -0
  14. package/dist/apis/TemplatesApi.d.ts +100 -0
  15. package/dist/apis/TemplatesApi.js +124 -0
  16. package/dist/apis/TokensApi.d.ts +71 -0
  17. package/dist/apis/TokensApi.js +95 -0
  18. package/dist/extras/fetchWithRetry.d.ts +30 -0
  19. package/dist/extras/fetchWithRetry.js +53 -0
  20. package/dist/extras/messaging.d.ts +81 -0
  21. package/dist/extras/messaging.js +16 -0
  22. package/dist/index.d.ts +17 -0
  23. package/dist/index.js +42 -0
  24. package/dist/runtime/index.d.ts +5 -0
  25. package/dist/runtime/index.js +21 -0
  26. package/dist/runtime/transport.d.ts +28 -0
  27. package/dist/runtime/transport.js +209 -0
  28. package/dist/runtime/types.d.ts +52 -0
  29. package/dist/runtime/types.js +23 -0
  30. package/dist/types/common/portal-form.d.ts +14 -0
  31. package/dist/types/common/portal-form.js +8 -0
  32. package/dist/types/dashboard/custom-item.d.ts +49 -0
  33. package/dist/types/dashboard/custom-item.js +22 -0
  34. package/dist/types/dashboard/dashboard.d.ts +421 -0
  35. package/dist/types/dashboard/dashboard.js +8 -0
  36. package/dist/types/dashboard/dashboards.d.ts +19 -0
  37. package/dist/types/dashboard/dashboards.js +8 -0
  38. package/dist/types/dashboard/data.d.ts +10 -0
  39. package/dist/types/dashboard/data.js +8 -0
  40. package/dist/types/dashboard/export.d.ts +11 -0
  41. package/dist/types/dashboard/export.js +8 -0
  42. package/dist/types/dashboard/index.d.ts +215 -0
  43. package/dist/types/dashboard/index.js +34 -0
  44. package/dist/types/dashboard/intent.d.ts +181 -0
  45. package/dist/types/dashboard/intent.js +8 -0
  46. package/dist/types/dashboard/items.d.ts +14 -0
  47. package/dist/types/dashboard/items.js +8 -0
  48. package/dist/types/dashboard/metadata.d.ts +12 -0
  49. package/dist/types/dashboard/metadata.js +8 -0
  50. package/dist/types/dashboard/render.d.ts +183 -0
  51. package/dist/types/dashboard/render.js +51 -0
  52. package/dist/types/dashboard/rows.d.ts +77 -0
  53. package/dist/types/dashboard/rows.js +14 -0
  54. package/dist/types/dashboard/schema.d.ts +167 -0
  55. package/dist/types/dashboard/schema.js +17 -0
  56. package/dist/types/dashboard/values.d.ts +187 -0
  57. package/dist/types/dashboard/values.js +8 -0
  58. package/dist/types/dashboard/view.d.ts +249 -0
  59. package/dist/types/dashboard/view.js +8 -0
  60. package/dist/types/database/database.d.ts +203 -0
  61. package/dist/types/database/database.js +8 -0
  62. package/dist/types/database/export.d.ts +11 -0
  63. package/dist/types/database/export.js +8 -0
  64. package/dist/types/index.d.ts +29 -0
  65. package/dist/types/index.js +29 -0
  66. package/dist/types/relations/relations.d.ts +138 -0
  67. package/dist/types/relations/relations.js +14 -0
  68. package/dist/types/shared/common.d.ts +122 -0
  69. package/dist/types/shared/common.js +24 -0
  70. package/dist/types/shared/enums.d.ts +64 -0
  71. package/dist/types/shared/enums.js +52 -0
  72. package/dist/types/shared/health.d.ts +12 -0
  73. package/dist/types/shared/health.js +8 -0
  74. package/dist/types/shared/parameters.d.ts +100 -0
  75. package/dist/types/shared/parameters.js +2 -0
  76. package/dist/types/template/template.d.ts +74 -0
  77. package/dist/types/template/template.js +8 -0
  78. package/dist/types/token/token.d.ts +206 -0
  79. package/dist/types/token/token.js +8 -0
  80. package/package.json +16 -0
package/README.md ADDED
@@ -0,0 +1,52 @@
1
+ # Dashboard Service SDK
2
+
3
+ TypeScript SDK for Dashboard Service API - Generated from contract introspection.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @fusebase/dashboard-service-sdk
9
+ ```
10
+
11
+ ## Usage
12
+
13
+ ```typescript
14
+ import { createClient, TokensApi, DashboardsApi } from "@fusebase/dashboard-service-sdk";
15
+
16
+ // Create client
17
+ const client = createClient({
18
+ baseUrl: "https://api.example.com",
19
+ auth: {
20
+ type: "bearer",
21
+ token: "your-token-here",
22
+ },
23
+ });
24
+
25
+ // Use API classes
26
+ const tokensApi = new TokensApi(client);
27
+ const dashboardsApi = new DashboardsApi(client);
28
+
29
+ // Call methods
30
+ const token = await tokensApi.createToken({
31
+ body: {
32
+ scopes: [{ type: "org", id: "org-id" }],
33
+ permissions: ["dashboard.read"],
34
+ },
35
+ });
36
+ ```
37
+
38
+ ## API Classes
39
+
40
+ - `TokensApi` - Token management
41
+ - `DashboardsApi` - Dashboard operations
42
+ - `DatabasesApi` - Database operations
43
+ - `TemplatesApi` - Template operations
44
+ - And more...
45
+
46
+ ## Types
47
+
48
+ All TypeScript types are exported from the package:
49
+
50
+ ```typescript
51
+ import type { CreateTokenRequestContract, TokenResponseContract } from "@fusebase/dashboard-service-sdk";
52
+ ```
@@ -0,0 +1,113 @@
1
+ /**
2
+ * CustomDashboardRows API
3
+ *
4
+ * Generated from contract introspection
5
+ * Domain: custom dashboard rows
6
+ */
7
+ import type { Client } from "../runtime/transport";
8
+ import type { CreateDashboardRowRequestContract, DashboardRowResponseContract, sectionKeyInQueryRequired, sectionTypeInQueryRequired, StandardApiResponseContract, UpdateRowOrderRequestContract, viewIdInQueryRequired } from "../types";
9
+ export declare class CustomDashboardRowsApi {
10
+ private client;
11
+ constructor(client: Client);
12
+ /**
13
+ * Create custom dashboard rows
14
+ * Create a new custom dashboard rows
15
+ */
16
+ createDashboardRow(params: {
17
+ path: {
18
+ dashboardId: string;
19
+ };
20
+ headers?: Record<string, string>;
21
+ body: CreateDashboardRowRequestContract;
22
+ }): Promise<DashboardRowResponseContract>;
23
+ /**
24
+ * Delete custom dashboard row
25
+ * Delete a dashboard row by UUID
26
+ */
27
+ deleteDashboardRow(params: {
28
+ path: {
29
+ dashboardId: string;
30
+ rowUuid: string;
31
+ };
32
+ query?: {
33
+ force_associated_data_deletion?: boolean;
34
+ };
35
+ headers?: Record<string, string>;
36
+ }): Promise<StandardApiResponseContract>;
37
+ /**
38
+ * Initialize default row order for dashboard view, section, or item
39
+ * Create default row orders based on creation time. Requires section_type (view, section, or item), section_key, and section_value.
40
+ * For view: section_key=view, section_value=view_id.
41
+ * For section: section_key=section, section_value=section_uuid.
42
+ * For item: section_key=item_key, section_value=normalized_value.
43
+ * Only works if no orders exist.
44
+ *
45
+ */
46
+ initializeDashboardRowOrder(params: {
47
+ path: {
48
+ dashboardId: string;
49
+ };
50
+ query?: {
51
+ view_id: viewIdInQueryRequired;
52
+ section_type: sectionTypeInQueryRequired;
53
+ section_key: sectionKeyInQueryRequired;
54
+ };
55
+ headers?: Record<string, string>;
56
+ }): Promise<StandardApiResponseContract>;
57
+ /**
58
+ * List custom dashboard rows
59
+ * Get a list of existing row UUIDs for a custom dashboard. Returns all rows when no pagination parameters are provided.
60
+ */
61
+ listDashboardRows(params: {
62
+ path: {
63
+ dashboardId: string;
64
+ };
65
+ query?: {
66
+ start_from?: number;
67
+ limit?: number;
68
+ };
69
+ headers?: Record<string, string>;
70
+ }): Promise<DashboardRowResponseContract>;
71
+ /**
72
+ * Save current sorting order to permanent row order
73
+ * Saves the current dynamic sorting order (from field-based sorting) to permanent row order.
74
+ * Requires section_type (view, section, or item), section_key, and section_value.
75
+ * For view: section_key=view, section_value=view_id.
76
+ * For section: section_key=section, section_value=section_uuid.
77
+ * For item: section_key=item_key, section_value=normalized_value.
78
+ * Only available for dashboards with entity type "custom".
79
+ *
80
+ */
81
+ saveDashboardRowOrder(params: {
82
+ path: {
83
+ dashboardId: string;
84
+ };
85
+ query?: {
86
+ view_id: viewIdInQueryRequired;
87
+ section_type: sectionTypeInQueryRequired;
88
+ section_key: sectionKeyInQueryRequired;
89
+ };
90
+ headers?: Record<string, string>;
91
+ }): Promise<StandardApiResponseContract>;
92
+ /**
93
+ * Update row order for dashboard view, section, or item
94
+ * Update the sort order of rows. Requires section_type (view, section, or item), section_key, and section_value.
95
+ * For view: section_key=view, section_value=view_id.
96
+ * For section: section_key=section, section_value=section_uuid.
97
+ * For item: section_key=item_key, section_value=normalized_value.
98
+ * Implements lazy loading - creates default orders if none exist.
99
+ *
100
+ */
101
+ updateDashboardRowOrder(params: {
102
+ path: {
103
+ dashboardId: string;
104
+ };
105
+ query?: {
106
+ view_id: viewIdInQueryRequired;
107
+ section_type: sectionTypeInQueryRequired;
108
+ section_key: sectionKeyInQueryRequired;
109
+ };
110
+ headers?: Record<string, string>;
111
+ body: UpdateRowOrderRequestContract;
112
+ }): Promise<StandardApiResponseContract>;
113
+ }
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ /**
3
+ * CustomDashboardRows API
4
+ *
5
+ * Generated from contract introspection
6
+ * Domain: custom dashboard rows
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.CustomDashboardRowsApi = void 0;
10
+ class CustomDashboardRowsApi {
11
+ constructor(client) {
12
+ this.client = client;
13
+ }
14
+ /**
15
+ * Create custom dashboard rows
16
+ * Create a new custom dashboard rows
17
+ */
18
+ async createDashboardRow(params) {
19
+ return this.client.request({
20
+ method: "POST",
21
+ path: "/dashboards/:dashboardId/rows",
22
+ pathParams: params.path,
23
+ headers: params.headers,
24
+ body: params.body,
25
+ opId: "createDashboardRow",
26
+ expectedContentType: "application/json",
27
+ });
28
+ }
29
+ /**
30
+ * Delete custom dashboard row
31
+ * Delete a dashboard row by UUID
32
+ */
33
+ async deleteDashboardRow(params) {
34
+ return this.client.request({
35
+ method: "DELETE",
36
+ path: "/dashboards/:dashboardId/rows/:rowUuid",
37
+ pathParams: params.path,
38
+ query: params.query,
39
+ headers: params.headers,
40
+ opId: "deleteDashboardRow",
41
+ expectedContentType: "application/json",
42
+ });
43
+ }
44
+ /**
45
+ * Initialize default row order for dashboard view, section, or item
46
+ * Create default row orders based on creation time. Requires section_type (view, section, or item), section_key, and section_value.
47
+ * For view: section_key=view, section_value=view_id.
48
+ * For section: section_key=section, section_value=section_uuid.
49
+ * For item: section_key=item_key, section_value=normalized_value.
50
+ * Only works if no orders exist.
51
+ *
52
+ */
53
+ async initializeDashboardRowOrder(params) {
54
+ return this.client.request({
55
+ method: "POST",
56
+ path: "/dashboards/:dashboardId/rows/order/initialize",
57
+ pathParams: params.path,
58
+ query: params.query,
59
+ headers: params.headers,
60
+ opId: "initializeDashboardRowOrder",
61
+ expectedContentType: "application/json",
62
+ });
63
+ }
64
+ /**
65
+ * List custom dashboard rows
66
+ * Get a list of existing row UUIDs for a custom dashboard. Returns all rows when no pagination parameters are provided.
67
+ */
68
+ async listDashboardRows(params) {
69
+ return this.client.request({
70
+ method: "GET",
71
+ path: "/dashboards/:dashboardId/rows",
72
+ pathParams: params.path,
73
+ query: params.query,
74
+ headers: params.headers,
75
+ opId: "listDashboardRows",
76
+ expectedContentType: "application/json",
77
+ });
78
+ }
79
+ /**
80
+ * Save current sorting order to permanent row order
81
+ * Saves the current dynamic sorting order (from field-based sorting) to permanent row order.
82
+ * Requires section_type (view, section, or item), section_key, and section_value.
83
+ * For view: section_key=view, section_value=view_id.
84
+ * For section: section_key=section, section_value=section_uuid.
85
+ * For item: section_key=item_key, section_value=normalized_value.
86
+ * Only available for dashboards with entity type "custom".
87
+ *
88
+ */
89
+ async saveDashboardRowOrder(params) {
90
+ return this.client.request({
91
+ method: "POST",
92
+ path: "/dashboards/:dashboardId/rows/order/save",
93
+ pathParams: params.path,
94
+ query: params.query,
95
+ headers: params.headers,
96
+ opId: "saveDashboardRowOrder",
97
+ expectedContentType: "application/json",
98
+ });
99
+ }
100
+ /**
101
+ * Update row order for dashboard view, section, or item
102
+ * Update the sort order of rows. Requires section_type (view, section, or item), section_key, and section_value.
103
+ * For view: section_key=view, section_value=view_id.
104
+ * For section: section_key=section, section_value=section_uuid.
105
+ * For item: section_key=item_key, section_value=normalized_value.
106
+ * Implements lazy loading - creates default orders if none exist.
107
+ *
108
+ */
109
+ async updateDashboardRowOrder(params) {
110
+ return this.client.request({
111
+ method: "PUT",
112
+ path: "/dashboards/:dashboardId/rows/order",
113
+ pathParams: params.path,
114
+ query: params.query,
115
+ headers: params.headers,
116
+ body: params.body,
117
+ opId: "updateDashboardRowOrder",
118
+ expectedContentType: "application/json",
119
+ });
120
+ }
121
+ }
122
+ exports.CustomDashboardRowsApi = CustomDashboardRowsApi;
@@ -0,0 +1,98 @@
1
+ /**
2
+ * DashboardData API
3
+ *
4
+ * Generated from contract introspection
5
+ * Domain: dashboard data
6
+ */
7
+ import type { Client } from "../runtime/transport";
8
+ import type { BatchDashboardValueResponseContract, BatchUpdateDashboardDataRequestContract, cacheStrategyInQueryOptional, DashboardDataResponseContract, dashboardIdInPathRequired, DashboardValueResponseContract, ReindexDashboardData200ResponseContract, sectionKeyInQueryOptional, sectionTypeInQueryOptional, sourceDashboardIdInQueryRequired, sourceIndexInQueryRequired, UpdateDashboardDataRequestContract, viewIdInPathRequired } from "../types";
9
+ export declare class DashboardDataApi {
10
+ private client;
11
+ constructor(client: Client);
12
+ /**
13
+ * Batch update dashboard values
14
+ * Update or create multiple dashboard values in a single request
15
+ */
16
+ batchPutDashboardData(params: {
17
+ path: {
18
+ dashboardId: dashboardIdInPathRequired;
19
+ viewId: viewIdInPathRequired;
20
+ };
21
+ query?: {
22
+ validate?: boolean;
23
+ };
24
+ headers?: Record<string, string>;
25
+ body: BatchUpdateDashboardDataRequestContract;
26
+ }): Promise<BatchDashboardValueResponseContract>;
27
+ /**
28
+ * Get dashboard view data
29
+ * Get dashboard view data for a specific view
30
+ */
31
+ getDashboardViewData(params: {
32
+ path: {
33
+ dashboardId: dashboardIdInPathRequired;
34
+ viewId: viewIdInPathRequired;
35
+ };
36
+ query?: {
37
+ filters?: string;
38
+ select?: string;
39
+ sort?: string;
40
+ page?: number;
41
+ limit?: number;
42
+ exclude_async_items?: boolean;
43
+ item_keys?: unknown[];
44
+ system_filters?: boolean;
45
+ use_stored_filters?: boolean;
46
+ use_stored_sort?: boolean;
47
+ root_index_values?: unknown[];
48
+ cacheStrategy?: cacheStrategyInQueryOptional;
49
+ section_type?: sectionTypeInQueryOptional;
50
+ section_key?: sectionKeyInQueryOptional;
51
+ };
52
+ headers?: Record<string, string>;
53
+ }): Promise<DashboardDataResponseContract>;
54
+ /**
55
+ * Get related dashboard data
56
+ * Get dashboard data for rows related through dashboard relations
57
+ */
58
+ getRelatedDashboardData(params: {
59
+ path: {
60
+ dashboardId: dashboardIdInPathRequired;
61
+ };
62
+ query?: {
63
+ page?: number;
64
+ limit?: number;
65
+ exclude_async_items?: boolean;
66
+ item_keys?: unknown[];
67
+ source_dashboard_id: sourceDashboardIdInQueryRequired;
68
+ source_index: sourceIndexInQueryRequired;
69
+ cacheStrategy?: cacheStrategyInQueryOptional;
70
+ };
71
+ headers?: Record<string, string>;
72
+ }): Promise<DashboardDataResponseContract>;
73
+ /**
74
+ * Update dashboard value
75
+ * Update or create a dashboard value for a specific root index key and value
76
+ */
77
+ putDashboardData(params: {
78
+ path: {
79
+ dashboardId: dashboardIdInPathRequired;
80
+ viewId: viewIdInPathRequired;
81
+ };
82
+ query?: {
83
+ validate?: boolean;
84
+ };
85
+ headers?: Record<string, string>;
86
+ body: UpdateDashboardDataRequestContract;
87
+ }): Promise<DashboardValueResponseContract>;
88
+ /**
89
+ * Reindex dashboard cache
90
+ * Force reindexing of dashboard data in Redis cache
91
+ */
92
+ reindexDashboardData(params: {
93
+ path: {
94
+ dashboardId: dashboardIdInPathRequired;
95
+ };
96
+ headers?: Record<string, string>;
97
+ }): Promise<ReindexDashboardData200ResponseContract>;
98
+ }
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ /**
3
+ * DashboardData API
4
+ *
5
+ * Generated from contract introspection
6
+ * Domain: dashboard data
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.DashboardDataApi = void 0;
10
+ class DashboardDataApi {
11
+ constructor(client) {
12
+ this.client = client;
13
+ }
14
+ /**
15
+ * Batch update dashboard values
16
+ * Update or create multiple dashboard values in a single request
17
+ */
18
+ async batchPutDashboardData(params) {
19
+ return this.client.request({
20
+ method: "PUT",
21
+ path: "/dashboards/:dashboardId/views/:viewId/data/batch",
22
+ pathParams: params.path,
23
+ query: params.query,
24
+ headers: params.headers,
25
+ body: params.body,
26
+ opId: "batchPutDashboardData",
27
+ expectedContentType: "application/json",
28
+ });
29
+ }
30
+ /**
31
+ * Get dashboard view data
32
+ * Get dashboard view data for a specific view
33
+ */
34
+ async getDashboardViewData(params) {
35
+ return this.client.request({
36
+ method: "GET",
37
+ path: "/dashboards/:dashboardId/views/:viewId/data",
38
+ pathParams: params.path,
39
+ query: params.query,
40
+ headers: params.headers,
41
+ opId: "getDashboardViewData",
42
+ expectedContentType: "application/json",
43
+ });
44
+ }
45
+ /**
46
+ * Get related dashboard data
47
+ * Get dashboard data for rows related through dashboard relations
48
+ */
49
+ async getRelatedDashboardData(params) {
50
+ return this.client.request({
51
+ method: "GET",
52
+ path: "/dashboards/:dashboardId/related-data",
53
+ pathParams: params.path,
54
+ query: params.query,
55
+ headers: params.headers,
56
+ opId: "getRelatedDashboardData",
57
+ expectedContentType: "application/json",
58
+ });
59
+ }
60
+ /**
61
+ * Update dashboard value
62
+ * Update or create a dashboard value for a specific root index key and value
63
+ */
64
+ async putDashboardData(params) {
65
+ return this.client.request({
66
+ method: "PUT",
67
+ path: "/dashboards/:dashboardId/views/:viewId/data",
68
+ pathParams: params.path,
69
+ query: params.query,
70
+ headers: params.headers,
71
+ body: params.body,
72
+ opId: "putDashboardData",
73
+ expectedContentType: "application/json",
74
+ });
75
+ }
76
+ /**
77
+ * Reindex dashboard cache
78
+ * Force reindexing of dashboard data in Redis cache
79
+ */
80
+ async reindexDashboardData(params) {
81
+ return this.client.request({
82
+ method: "POST",
83
+ path: "/dashboards/:dashboardId/reindex",
84
+ pathParams: params.path,
85
+ headers: params.headers,
86
+ opId: "reindexDashboardData",
87
+ expectedContentType: "application/json",
88
+ });
89
+ }
90
+ }
91
+ exports.DashboardDataApi = DashboardDataApi;
@@ -0,0 +1,92 @@
1
+ /**
2
+ * DashboardRelations API
3
+ *
4
+ * Generated from contract introspection
5
+ * Domain: dashboard relations
6
+ */
7
+ import type { Client } from "../runtime/transport";
8
+ import type { AddRelationRowsRequestContract, CreateDashboardRelationRequestContract, DashboardRelationListResponseContract, DashboardRelationResponseContract, includeRows, relationId, StandardApiResponseContract, targetDashboardIdInQueryRequired, UpdateRelationRowsRequestContract } from "../types";
9
+ export declare class DashboardRelationsApi {
10
+ private client;
11
+ constructor(client: Client);
12
+ /**
13
+ * Add relation rows
14
+ * Add row mappings to an existing relation
15
+ */
16
+ addRelationRows(params: {
17
+ path: {
18
+ relationId: relationId;
19
+ };
20
+ headers?: Record<string, string>;
21
+ body: AddRelationRowsRequestContract;
22
+ }): Promise<DashboardRelationResponseContract>;
23
+ /**
24
+ * Create dashboard relation
25
+ * Create a new relation between two dashboards
26
+ */
27
+ createDashboardRelation(params: {
28
+ headers?: Record<string, string>;
29
+ body: CreateDashboardRelationRequestContract;
30
+ }): Promise<DashboardRelationResponseContract>;
31
+ /**
32
+ * Delete dashboard relation
33
+ * Delete a dashboard relation and all its row mappings (soft delete)
34
+ */
35
+ deleteDashboardRelation(params: {
36
+ path: {
37
+ relationId: relationId;
38
+ };
39
+ headers?: Record<string, string>;
40
+ }): Promise<StandardApiResponseContract>;
41
+ /**
42
+ * Delete relation rows
43
+ * Remove specific row mappings from a relation
44
+ */
45
+ deleteRelationRows(params: {
46
+ path: {
47
+ relationId: relationId;
48
+ };
49
+ query?: {
50
+ source_index?: string;
51
+ target_index?: string;
52
+ };
53
+ headers?: Record<string, string>;
54
+ }): Promise<StandardApiResponseContract>;
55
+ /**
56
+ * Find relations
57
+ * Find relations by source and target dashboard IDs
58
+ */
59
+ findRelationsByDashboardIds(params: {
60
+ query?: {
61
+ source_dashboard_id?: string;
62
+ inversive_search?: boolean;
63
+ include_rows?: boolean;
64
+ target_dashboard_id: targetDashboardIdInQueryRequired;
65
+ };
66
+ headers?: Record<string, string>;
67
+ }): Promise<DashboardRelationListResponseContract>;
68
+ /**
69
+ * Get dashboard relation
70
+ * Get a specific dashboard relation by ID
71
+ */
72
+ getDashboardRelationById(params: {
73
+ path: {
74
+ relationId: relationId;
75
+ };
76
+ query?: {
77
+ include_rows?: includeRows;
78
+ };
79
+ headers?: Record<string, string>;
80
+ }): Promise<DashboardRelationResponseContract>;
81
+ /**
82
+ * Update relation rows
83
+ * Replace all row mappings for a relation
84
+ */
85
+ updateRelationRows(params: {
86
+ path: {
87
+ relationId: relationId;
88
+ };
89
+ headers?: Record<string, string>;
90
+ body: UpdateRelationRowsRequestContract;
91
+ }): Promise<DashboardRelationResponseContract>;
92
+ }
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ /**
3
+ * DashboardRelations API
4
+ *
5
+ * Generated from contract introspection
6
+ * Domain: dashboard relations
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.DashboardRelationsApi = void 0;
10
+ class DashboardRelationsApi {
11
+ constructor(client) {
12
+ this.client = client;
13
+ }
14
+ /**
15
+ * Add relation rows
16
+ * Add row mappings to an existing relation
17
+ */
18
+ async addRelationRows(params) {
19
+ return this.client.request({
20
+ method: "POST",
21
+ path: "/relations/:relationId/rows",
22
+ pathParams: params.path,
23
+ headers: params.headers,
24
+ body: params.body,
25
+ opId: "addRelationRows",
26
+ expectedContentType: "application/json",
27
+ });
28
+ }
29
+ /**
30
+ * Create dashboard relation
31
+ * Create a new relation between two dashboards
32
+ */
33
+ async createDashboardRelation(params) {
34
+ return this.client.request({
35
+ method: "POST",
36
+ path: "/relations",
37
+ headers: params.headers,
38
+ body: params.body,
39
+ opId: "createDashboardRelation",
40
+ expectedContentType: "application/json",
41
+ });
42
+ }
43
+ /**
44
+ * Delete dashboard relation
45
+ * Delete a dashboard relation and all its row mappings (soft delete)
46
+ */
47
+ async deleteDashboardRelation(params) {
48
+ return this.client.request({
49
+ method: "DELETE",
50
+ path: "/relations/:relationId",
51
+ pathParams: params.path,
52
+ headers: params.headers,
53
+ opId: "deleteDashboardRelation",
54
+ expectedContentType: "application/json",
55
+ });
56
+ }
57
+ /**
58
+ * Delete relation rows
59
+ * Remove specific row mappings from a relation
60
+ */
61
+ async deleteRelationRows(params) {
62
+ return this.client.request({
63
+ method: "DELETE",
64
+ path: "/relations/:relationId/rows",
65
+ pathParams: params.path,
66
+ query: params.query,
67
+ headers: params.headers,
68
+ opId: "deleteRelationRows",
69
+ expectedContentType: "application/json",
70
+ });
71
+ }
72
+ /**
73
+ * Find relations
74
+ * Find relations by source and target dashboard IDs
75
+ */
76
+ async findRelationsByDashboardIds(params) {
77
+ return this.client.request({
78
+ method: "GET",
79
+ path: "/relations",
80
+ query: params.query,
81
+ headers: params.headers,
82
+ opId: "findRelationsByDashboardIds",
83
+ expectedContentType: "application/json",
84
+ });
85
+ }
86
+ /**
87
+ * Get dashboard relation
88
+ * Get a specific dashboard relation by ID
89
+ */
90
+ async getDashboardRelationById(params) {
91
+ return this.client.request({
92
+ method: "GET",
93
+ path: "/relations/:relationId",
94
+ pathParams: params.path,
95
+ query: params.query,
96
+ headers: params.headers,
97
+ opId: "getDashboardRelationById",
98
+ expectedContentType: "application/json",
99
+ });
100
+ }
101
+ /**
102
+ * Update relation rows
103
+ * Replace all row mappings for a relation
104
+ */
105
+ async updateRelationRows(params) {
106
+ return this.client.request({
107
+ method: "PUT",
108
+ path: "/relations/:relationId/rows",
109
+ pathParams: params.path,
110
+ headers: params.headers,
111
+ body: params.body,
112
+ opId: "updateRelationRows",
113
+ expectedContentType: "application/json",
114
+ });
115
+ }
116
+ }
117
+ exports.DashboardRelationsApi = DashboardRelationsApi;