@meshery/schemas 1.2.21 → 1.2.23

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 (106) hide show
  1. package/dist/cloudApi.d.mts +1728 -1527
  2. package/dist/cloudApi.d.ts +1728 -1527
  3. package/dist/cloudApi.js +1 -1
  4. package/dist/cloudApi.mjs +1 -1
  5. package/dist/constructs/v1alpha1/capability/Capability.d.ts +111 -106
  6. package/dist/constructs/v1alpha1/core/Core.d.ts +734 -822
  7. package/dist/constructs/v1alpha2/catalog/Catalog.d.ts +40 -45
  8. package/dist/constructs/v1alpha3/relationship/Relationship.d.ts +1716 -1829
  9. package/dist/constructs/v1beta1/academy/Academy.d.ts +6537 -5918
  10. package/dist/constructs/v1beta1/academy/AcademySchema.js +1 -1
  11. package/dist/constructs/v1beta1/academy/AcademySchema.mjs +1 -1
  12. package/dist/constructs/v1beta1/badge/Badge.d.ts +600 -439
  13. package/dist/constructs/v1beta1/capability/Capability.d.ts +111 -106
  14. package/dist/constructs/v1beta1/catalog/Catalog.d.ts +40 -45
  15. package/dist/constructs/v1beta1/category/Category.d.ts +26 -38
  16. package/dist/constructs/v1beta1/component/Component.d.ts +729 -833
  17. package/dist/constructs/v1beta1/connection/Connection.d.ts +1357 -1170
  18. package/dist/constructs/v1beta1/core/Core.d.ts +734 -822
  19. package/dist/constructs/v1beta1/credential/Credential.d.ts +593 -458
  20. package/dist/constructs/v1beta1/environment/Environment.d.ts +835 -666
  21. package/dist/constructs/v1beta1/evaluation/Evaluation.d.ts +5508 -6030
  22. package/dist/constructs/v1beta1/event/Event.d.ts +898 -527
  23. package/dist/constructs/v1beta1/feature/Feature.d.ts +287 -249
  24. package/dist/constructs/v1beta1/invitation/Invitation.d.ts +1244 -877
  25. package/dist/constructs/v1beta1/key/Key.d.ts +589 -444
  26. package/dist/constructs/v1beta1/keychain/Keychain.d.ts +796 -575
  27. package/dist/constructs/v1beta1/model/Model.d.ts +572 -598
  28. package/dist/constructs/v1beta1/organization/Organization.d.ts +1829 -1410
  29. package/dist/constructs/v1beta1/pattern/Pattern.d.ts +17093 -17910
  30. package/dist/constructs/v1beta1/plan/Plan.d.ts +159 -115
  31. package/dist/constructs/v1beta1/role/Role.d.ts +933 -688
  32. package/dist/constructs/v1beta1/role/RoleSchema.js +1 -1
  33. package/dist/constructs/v1beta1/role/RoleSchema.mjs +1 -1
  34. package/dist/constructs/v1beta1/schedule/Schedule.d.ts +425 -315
  35. package/dist/constructs/v1beta1/subcategory/Subcategory.d.ts +18 -61
  36. package/dist/constructs/v1beta1/subscription/Subscription.d.ts +839 -674
  37. package/dist/constructs/v1beta1/support/Support.d.ts +115 -74
  38. package/dist/constructs/v1beta1/system/System.d.ts +434 -0
  39. package/dist/constructs/v1beta1/system/System.js +1 -0
  40. package/dist/constructs/v1beta1/system/System.mjs +0 -0
  41. package/dist/constructs/v1beta1/system/SystemSchema.d.ts +2 -0
  42. package/dist/constructs/v1beta1/system/SystemSchema.js +2 -0
  43. package/dist/constructs/v1beta1/system/SystemSchema.mjs +2 -0
  44. package/dist/constructs/v1beta1/team/Team.d.ts +1028 -762
  45. package/dist/constructs/v1beta1/token/Token.d.ts +612 -475
  46. package/dist/constructs/v1beta1/user/User.d.ts +1723 -1554
  47. package/dist/constructs/v1beta1/user/UserSchema.js +1 -1
  48. package/dist/constructs/v1beta1/user/UserSchema.mjs +1 -1
  49. package/dist/constructs/v1beta1/view/View.d.ts +833 -664
  50. package/dist/constructs/v1beta1/workspace/Workspace.d.ts +4900 -4695
  51. package/dist/constructs/v1beta2/academy/Academy.d.ts +7840 -7222
  52. package/dist/constructs/v1beta2/academy/AcademySchema.js +1 -1
  53. package/dist/constructs/v1beta2/academy/AcademySchema.mjs +1 -1
  54. package/dist/constructs/v1beta2/badge/Badge.d.ts +610 -453
  55. package/dist/constructs/v1beta2/catalog/Catalog.d.ts +40 -45
  56. package/dist/constructs/v1beta2/component/Component.d.ts +747 -851
  57. package/dist/constructs/v1beta2/connection/Connection.d.ts +1376 -1189
  58. package/dist/constructs/v1beta2/core/Core.d.ts +768 -856
  59. package/dist/constructs/v1beta2/credential/Credential.d.ts +572 -437
  60. package/dist/constructs/v1beta2/design/Design.d.ts +17682 -18467
  61. package/dist/constructs/v1beta2/event/Event.d.ts +946 -575
  62. package/dist/constructs/v1beta2/invitation/Invitation.d.ts +1268 -901
  63. package/dist/constructs/v1beta2/key/Key.d.ts +599 -454
  64. package/dist/constructs/v1beta2/keychain/Keychain.d.ts +806 -585
  65. package/dist/constructs/v1beta2/model/Model.d.ts +610 -636
  66. package/dist/constructs/v1beta2/organization/Organization.d.ts +2135 -1724
  67. package/dist/constructs/v1beta2/plan/Plan.d.ts +169 -128
  68. package/dist/constructs/v1beta2/relationship/Relationship.d.ts +1842 -2011
  69. package/dist/constructs/v1beta2/role/Role.d.ts +940 -695
  70. package/dist/constructs/v1beta2/role/RoleSchema.js +1 -1
  71. package/dist/constructs/v1beta2/role/RoleSchema.mjs +1 -1
  72. package/dist/constructs/v1beta2/schedule/Schedule.d.ts +466 -356
  73. package/dist/constructs/v1beta2/subscription/Subscription.d.ts +866 -701
  74. package/dist/constructs/v1beta2/team/Team.d.ts +1118 -852
  75. package/dist/constructs/v1beta2/token/Token.d.ts +616 -479
  76. package/dist/constructs/v1beta2/user/User.d.ts +1723 -1554
  77. package/dist/constructs/v1beta2/user/UserSchema.js +1 -1
  78. package/dist/constructs/v1beta2/user/UserSchema.mjs +1 -1
  79. package/dist/constructs/v1beta2/view/View.d.ts +838 -669
  80. package/dist/constructs/v1beta3/academy/Academy.d.ts +7844 -7226
  81. package/dist/constructs/v1beta3/academy/AcademySchema.js +1 -1
  82. package/dist/constructs/v1beta3/academy/AcademySchema.mjs +1 -1
  83. package/dist/constructs/v1beta3/component/Component.d.ts +753 -857
  84. package/dist/constructs/v1beta3/connection/Connection.d.ts +1447 -1260
  85. package/dist/constructs/v1beta3/design/Design.d.ts +5729 -5307
  86. package/dist/constructs/v1beta3/design/DesignSchema.js +8 -8
  87. package/dist/constructs/v1beta3/design/DesignSchema.mjs +8 -8
  88. package/dist/constructs/v1beta3/environment/Environment.d.ts +858 -689
  89. package/dist/constructs/v1beta3/event/Event.d.ts +1041 -666
  90. package/dist/constructs/v1beta3/filter/Filter.d.ts +1437 -1299
  91. package/dist/constructs/v1beta3/invitation/Invitation.d.ts +1277 -910
  92. package/dist/constructs/v1beta3/performance_profile/PerformanceProfile.d.ts +850 -690
  93. package/dist/constructs/v1beta3/plan/Plan.d.ts +197 -156
  94. package/dist/constructs/v1beta3/relationship/Relationship.d.ts +1842 -2011
  95. package/dist/constructs/v1beta3/subscription/Subscription.d.ts +969 -804
  96. package/dist/constructs/v1beta3/token/Token.d.ts +616 -479
  97. package/dist/constructs/v1beta3/workspace/Workspace.d.ts +5030 -4822
  98. package/dist/index.d.mts +5520 -5062
  99. package/dist/index.d.ts +5520 -5062
  100. package/dist/mesheryApi.d.mts +1318 -526
  101. package/dist/mesheryApi.d.ts +1318 -526
  102. package/dist/mesheryApi.js +1 -1
  103. package/dist/mesheryApi.mjs +1 -1
  104. package/dist/permissions.d.mts +1 -1
  105. package/dist/permissions.d.ts +1 -1
  106. package/package.json +1 -2
@@ -3,890 +3,786 @@
3
3
  * Do not make direct changes to the file.
4
4
  */
5
5
 
6
- export interface paths {}
7
-
6
+ export type paths = Record<string, never>;
7
+ export type webhooks = Record<string, never>;
8
8
  export interface components {
9
- schemas: {
10
- /** @description Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components */
11
- ComponentDefinition: {
12
- /**
13
- * Format: uuid
14
- * @description Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).
15
- */
16
- id: string;
17
- /**
18
- * @description Specifies the version of the schema to which the component definition conforms.
19
- * @default components.meshery.io/v1beta3
20
- * @example [
21
- * "v1",
22
- * "v1alpha1",
23
- * "v2beta3",
24
- * "v1.custom-suffix",
25
- * "models.meshery.io/v1beta1",
26
- * "capability.meshery.io/v1alpha1"
27
- * ]
28
- */
29
- schemaVersion: string;
30
- /** @description Version of the component definition. */
31
- version: string;
32
- /** @description Name of the component in human-readable format. */
33
- displayName: string;
34
- /** @description A written representation of the purpose and characteristics of the component. */
35
- description: string;
36
- /**
37
- * @description Format specifies the format used in the `component.schema` field. JSON is the default.
38
- * @default JSON
39
- * @enum {string}
40
- */
41
- format: "JSON" | "CUE";
42
- /** @description Reference to the specific registered model to which the component belongs and from which model version, category, and other properties may be referenced. Learn more at https://docs.meshery.io/concepts/models */
43
- model: {
44
- /**
45
- * Format: uuid
46
- * @description Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).
47
- */
48
- id: string;
49
- /**
50
- * @description Specifies the version of the schema used for the definition.
51
- * @default models.meshery.io/v1beta1
52
- * @example [
53
- * "v1",
54
- * "v1alpha1",
55
- * "v2beta3",
56
- * "v1.custom-suffix",
57
- * "models.meshery.io/v1beta1",
58
- * "capability.meshery.io/v1alpha1"
59
- * ]
60
- */
61
- schemaVersion: string;
62
- /** @description Version of the model definition. */
63
- version: string;
64
- /**
65
- * @description The unique name for the model within the scope of a registrant.
66
- * @default untitled-model
67
- */
68
- name: string;
69
- /**
70
- * @description Human-readable name for the model.
71
- * @default Untitled Model
72
- */
73
- displayName: string;
74
- /**
75
- * @description Description of the model.
76
- * @default A new Meshery model.
77
- */
78
- description: string;
79
- /**
80
- * @description Status of model, including:
81
- * - duplicate: this component is a duplicate of another. The component that is to be the canonical reference and that is duplicated by other components should not be assigned the 'duplicate' status.
82
- * - maintenance: model is unavailable for a period of time.
83
- * - enabled: model is available for use for all users of this Meshery Server.
84
- * - ignored: model is unavailable for use for all users of this Meshery Server.
85
- * @default enabled
86
- * @enum {string}
87
- */
88
- status: "ignored" | "enabled" | "duplicate";
89
- /** @description Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections */
90
- registrant: {
91
- /**
92
- * Format: uuid
93
- * @description Connection ID
94
- */
95
- id: string;
96
- /** @description Connection Name */
97
- name: string;
98
- /**
99
- * Format: uuid
100
- * @description Associated Credential ID
101
- */
102
- credentialId?: string;
103
- /** @description Connection Type (platform, telemetry, collaboration) */
104
- type: string;
105
- /** @description Connection Subtype (cloud, identity, metrics, chat, git, orchestration) */
106
- subType: string;
107
- /** @description Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github) */
108
- kind: string;
109
- /** @description Additional connection metadata */
110
- metadata?: { [key: string]: unknown };
111
- /**
112
- * @description Connection Status
113
- * @enum {string}
114
- */
115
- status:
116
- | "discovered"
117
- | "registered"
118
- | "connected"
119
- | "ignored"
120
- | "maintenance"
121
- | "disconnected"
122
- | "deleted"
123
- | "not found";
124
- /**
125
- * Format: uuid
126
- * @description User ID who owns this connection
127
- */
128
- user_id?: string;
129
- /** Format: date-time */
130
- created_at?: string;
131
- /** Format: date-time */
132
- updated_at?: string;
133
- /**
134
- * Format: date-time
135
- * @description SQL null Timestamp to handle null values of time.
136
- */
137
- deleted_at?: string;
138
- /** @description Associated environments for this connection */
139
- environments?: {
9
+ schemas: {
10
+ /** @description Components are reusable building blocks for depicting capabilities defined within models. Learn more at https://docs.meshery.io/concepts/components */
11
+ ComponentDefinition: {
140
12
  /**
141
13
  * Format: uuid
142
- * @description ID
14
+ * @description Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).
143
15
  */
144
16
  id: string;
145
17
  /**
146
- * @description Specifies the version of the schema to which the environment conforms.
147
- * @default environments.meshery.io/v1beta1
18
+ * @description Specifies the version of the schema to which the component definition conforms.
19
+ * @default components.meshery.io/v1beta3
148
20
  * @example [
149
- * "v1",
150
- * "v1alpha1",
151
- * "v2beta3",
152
- * "v1.custom-suffix",
153
- * "models.meshery.io/v1beta1",
154
- * "capability.meshery.io/v1alpha1"
155
- * ]
21
+ * "v1",
22
+ * "v1alpha1",
23
+ * "v2beta3",
24
+ * "v1.custom-suffix",
25
+ * "models.meshery.io/v1beta1",
26
+ * "capability.meshery.io/v1alpha1"
27
+ * ]
156
28
  */
157
29
  schemaVersion: string;
158
- /** @description Environment name */
159
- name: string;
160
- /** @description Environment description */
30
+ /** @description Version of the component definition. */
31
+ version: string;
32
+ /** @description Name of the component in human-readable format. */
33
+ displayName: string;
34
+ /** @description A written representation of the purpose and characteristics of the component. */
161
35
  description: string;
162
36
  /**
163
- * Format: uuid
164
- * @description Environment organization ID
37
+ * @description Format specifies the format used in the `component.schema` field. JSON is the default.
38
+ * @default JSON
39
+ * @enum {string}
165
40
  */
166
- organization_id: string;
41
+ format: "JSON" | "CUE";
42
+ /** @description Reference to the specific registered model to which the component belongs and from which model version, category, and other properties may be referenced. Learn more at https://docs.meshery.io/concepts/models */
43
+ model: {
44
+ /**
45
+ * Format: uuid
46
+ * @description Uniquely identifies the entity (i.e. component) as defined in a declaration (i.e. design).
47
+ */
48
+ id: string;
49
+ /**
50
+ * @description Specifies the version of the schema used for the definition.
51
+ * @default models.meshery.io/v1beta1
52
+ * @example [
53
+ * "v1",
54
+ * "v1alpha1",
55
+ * "v2beta3",
56
+ * "v1.custom-suffix",
57
+ * "models.meshery.io/v1beta1",
58
+ * "capability.meshery.io/v1alpha1"
59
+ * ]
60
+ */
61
+ schemaVersion: string;
62
+ /** @description Version of the model definition. */
63
+ version: string;
64
+ /**
65
+ * @description The unique name for the model within the scope of a registrant.
66
+ * @default untitled-model
67
+ * @example cert-manager
68
+ */
69
+ name: string;
70
+ /**
71
+ * @description Human-readable name for the model.
72
+ * @default Untitled Model
73
+ * @example Cert Manager
74
+ */
75
+ displayName: string;
76
+ /**
77
+ * @description Description of the model.
78
+ * @default A new Meshery model.
79
+ */
80
+ description: string;
81
+ /**
82
+ * @description Status of model, including:
83
+ * - duplicate: this component is a duplicate of another. The component that is to be the canonical reference and that is duplicated by other components should not be assigned the 'duplicate' status.
84
+ * - maintenance: model is unavailable for a period of time.
85
+ * - enabled: model is available for use for all users of this Meshery Server.
86
+ * - ignored: model is unavailable for use for all users of this Meshery Server.
87
+ * @default enabled
88
+ * @enum {string}
89
+ */
90
+ status: "ignored" | "enabled" | "duplicate";
91
+ /** @description Meshery Connections are managed and unmanaged resources that either through discovery or manual entry are tracked by Meshery. Learn more at https://docs.meshery.io/concepts/logical/connections */
92
+ registrant: {
93
+ /**
94
+ * Format: uuid
95
+ * @description Connection ID
96
+ */
97
+ id: string;
98
+ /** @description Connection Name */
99
+ name: string;
100
+ /**
101
+ * Format: uuid
102
+ * @description Associated Credential ID
103
+ */
104
+ credentialId?: string;
105
+ /** @description Connection Type (platform, telemetry, collaboration) */
106
+ type: string;
107
+ /** @description Connection Subtype (cloud, identity, metrics, chat, git, orchestration) */
108
+ subType: string;
109
+ /** @description Connection Kind (meshery, kubernetes, prometheus, grafana, gke, aws, azure, slack, github) */
110
+ kind: string;
111
+ /** @description Additional connection metadata */
112
+ metadata?: Record<string, never>;
113
+ /**
114
+ * @description Connection Status
115
+ * @enum {string}
116
+ */
117
+ status: "discovered" | "registered" | "connected" | "ignored" | "maintenance" | "disconnected" | "deleted" | "not found";
118
+ /**
119
+ * Format: uuid
120
+ * @description User ID who owns this connection
121
+ */
122
+ user_id?: string;
123
+ /** Format: date-time */
124
+ created_at?: string;
125
+ /** Format: date-time */
126
+ updated_at?: string;
127
+ /**
128
+ * Format: date-time
129
+ * @description SQL null Timestamp to handle null values of time.
130
+ */
131
+ deleted_at?: string;
132
+ /** @description Associated environments for this connection */
133
+ environments?: {
134
+ /**
135
+ * Format: uuid
136
+ * @description ID
137
+ */
138
+ id: string;
139
+ /**
140
+ * @description Specifies the version of the schema to which the environment conforms.
141
+ * @default environments.meshery.io/v1beta1
142
+ * @example [
143
+ * "v1",
144
+ * "v1alpha1",
145
+ * "v2beta3",
146
+ * "v1.custom-suffix",
147
+ * "models.meshery.io/v1beta1",
148
+ * "capability.meshery.io/v1alpha1"
149
+ * ]
150
+ */
151
+ schemaVersion: string;
152
+ /** @description Environment name */
153
+ name: string;
154
+ /** @description Environment description */
155
+ description: string;
156
+ /**
157
+ * Format: uuid
158
+ * @description Environment organization ID
159
+ */
160
+ organization_id: string;
161
+ /**
162
+ * Format: uuid
163
+ * @description Environment owner
164
+ */
165
+ owner?: string;
166
+ /**
167
+ * Format: date-time
168
+ * @description Timestamp when the resource was created.
169
+ */
170
+ created_at?: string;
171
+ /** @description Additional metadata associated with the environment. */
172
+ metadata?: Record<string, never>;
173
+ /**
174
+ * Format: date-time
175
+ * @description Timestamp when the resource was updated.
176
+ */
177
+ updated_at?: string;
178
+ /**
179
+ * Format: date-time
180
+ * @description Timestamp when the environment was soft deleted. Null while the environment remains active.
181
+ */
182
+ deleted_at?: string | null;
183
+ }[];
184
+ /**
185
+ * @description Specifies the version of the schema used for the definition.
186
+ * @default connections.meshery.io/v1beta1
187
+ * @example [
188
+ * "v1",
189
+ * "v1alpha1",
190
+ * "v2beta3",
191
+ * "v1.custom-suffix",
192
+ * "models.meshery.io/v1beta1",
193
+ * "capability.meshery.io/v1alpha1"
194
+ * ]
195
+ */
196
+ schemaVersion: string;
197
+ };
198
+ /**
199
+ * Format: uuid
200
+ * @description ID of the registrant.
201
+ */
202
+ registrantId: string;
203
+ /**
204
+ * Format: uuid
205
+ * @description ID of the category.
206
+ */
207
+ categoryId: string;
208
+ /** @description Category of the model. */
209
+ category: {
210
+ /**
211
+ * Format: uuid
212
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
213
+ */
214
+ id: string;
215
+ /**
216
+ * @description The category of the model that determines the main grouping.
217
+ * @default Uncategorized
218
+ * @enum {string}
219
+ */
220
+ name: "Analytics" | "App Definition and Development" | "Cloud Native Network" | "Cloud Native Storage" | "Database" | "Machine Learning" | "Observability and Analysis" | "Orchestration & Management" | "Platform" | "Provisioning" | "Runtime" | "Security & Compliance" | "Serverless" | "Tools" | "Uncategorized";
221
+ /** @description Additional metadata associated with the category. */
222
+ metadata: Record<string, never>;
223
+ };
224
+ /**
225
+ * SubCategory
226
+ * @description Sub category of the model determines the secondary grouping.
227
+ * @default Uncategorized
228
+ * @enum {string}
229
+ */
230
+ subCategory: "API Gateway" | "API Integration" | "Application Definition & Image Build" | "Automation & Configuration" | "Certified Kubernetes - Distribution" | "Chaos Engineering" | "Cloud Native Storage" | "Cloud Provider" | "CNI" | "Compute" | "Container Registry" | "Container Runtime" | "Container Security" | "Container" | "Content Delivery Network" | "Continuous Integration & Delivery" | "Coordination & Service Discovery" | "Database" | "Flowchart" | "Framework" | "Installable Platform" | "Key Management" | "Key Management Service" | "Kubernetes" | "Logging" | "Machine Learning" | "Management Governance" | "Metrics" | "Monitoring" | "Networking Content Delivery" | "Operating System" | "Query" | "Remote Procedure Call" | "Scheduling & Orchestration" | "Secrets Management" | "Security Identity & Compliance" | "Service Mesh" | "Service Proxy" | "Source Version Control" | "Storage" | "Specifications" | "Streaming & Messaging" | "Tools" | "Tracing" | "Uncategorized" | "Video Conferencing";
231
+ /** @description Metadata containing additional information associated with the model. */
232
+ metadata?: {
233
+ /** @description Capabilities associated with the model */
234
+ capabilities?: {
235
+ /**
236
+ * @description Specifies the version of the schema to which the capability definition conforms.
237
+ * @example [
238
+ * "v1",
239
+ * "v1alpha1",
240
+ * "v2beta3",
241
+ * "v1.custom-suffix",
242
+ * "models.meshery.io/v1beta1",
243
+ * "capability.meshery.io/v1alpha1"
244
+ * ]
245
+ */
246
+ schemaVersion: string;
247
+ /** @description Version of the capability definition. */
248
+ version: string;
249
+ /** @description Name of the capability in human-readible format. */
250
+ displayName: string;
251
+ /** @description A written representation of the purpose and characteristics of the capability. */
252
+ description: string;
253
+ /** @description Top-level categorization of the capability */
254
+ kind: string | "action" | "mutate" | "view" | "interaction";
255
+ /** @description Classification of capabilities. Used to group capabilities similar in nature. */
256
+ type: string;
257
+ /** @description Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability. */
258
+ subType: string;
259
+ /** @description Key that backs the capability. */
260
+ key: string;
261
+ /** @description State of the entity in which the capability is applicable. */
262
+ entityState: ("declaration" | "instance")[];
263
+ /**
264
+ * @description Status of the capability
265
+ * @default enabled
266
+ * @enum {string}
267
+ */
268
+ status: "enabled" | "disabled";
269
+ /** @description Metadata contains additional information associated with the capability. Extension point. */
270
+ metadata?: {
271
+ [key: string]: unknown;
272
+ };
273
+ }[];
274
+ /**
275
+ * @description Indicates whether the model and its entities should be treated as deployable entities or as logical representations.
276
+ * @default false
277
+ */
278
+ isAnnotation: boolean;
279
+ /**
280
+ * @description Primary color associated with the model.
281
+ * @default #00b39f
282
+ */
283
+ primaryColor: string;
284
+ /**
285
+ * @description Secondary color associated with the model.
286
+ * @default #00D3A9
287
+ */
288
+ secondaryColor: string;
289
+ /**
290
+ * @description SVG representation of the model in white color.
291
+ * @default <svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.405 8.732v6.57l5.694-3.297-5.694-3.273Zm0 7.942v6.602l5.747-3.285-5.747-3.317Z" fill="#fff"/><path d="M15.586 15.256v-6.47l-5.622 3.225 5.622 3.245ZM4.307 23.252a13.809 13.809 0 0 0 4.362 4.39v-6.914l-4.362 2.524Zm11.279-.008v-6.52L9.95 19.985l5.636 3.258Z" fill="#fff" fill-opacity=".8"/><path d="m9.49 27.23 5.707-3.263-5.707-3.3v6.563Z" fill="#fff"/><path d="M22.54 27.265v-6.553l-5.699 3.259 5.7 3.294Zm5.58-4.773a13.697 13.697 0 0 0 1.612-5.895l-5.934 3.397 4.323 2.498Z" fill="#fff" fill-opacity=".8"/><path d="m23.362 19.298 5.728-3.276-5.728-3.291v6.567Z" fill="#fff"/><path d="M22.541 11.315V4.8l-5.673 3.253 5.673 3.262Zm0 7.955v-6.574l-5.685 3.292 5.685 3.281Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 12.684v6.622l5.728-3.316-5.728-3.306Z" fill="#fff"/><path d="M15.586 2.25a13.69 13.69 0 0 0-6.037 1.595l6.037 3.463V2.25Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 4.756v6.583l5.732-3.288L9.49 4.756Z" fill="#fff"/><path d="M8.669 4.356a13.83 13.83 0 0 0-4.362 4.39l4.362 2.518V4.356Z" fill="#fff" fill-opacity=".8"/><path d="M22.504 3.88a13.695 13.695 0 0 0-6.099-1.63v5.123l6.1-3.493ZM2.25 16.483c.071 2.12.634 4.196 1.644 6.062l4.418-2.559-6.062-3.503Zm1.644-7.028a13.68 13.68 0 0 0-1.644 6.036l6.068-3.482-4.424-2.554Z" fill="#fff"/><path d="M9.539 28.147a13.673 13.673 0 0 0 6.047 1.603v-5.062L9.54 28.147Z" fill="#fff" fill-opacity=".8"/><path d="M27.697 8.768a13.83 13.83 0 0 0-4.335-4.383v6.889l4.335-2.506ZM23.362 27.62a13.851 13.851 0 0 0 4.351-4.417l-4.351-2.514v6.93Z" fill="#fff"/><path d="M29.75 15.452a13.659 13.659 0 0 0-1.63-5.979l-4.381 2.53 6.011 3.45Z" fill="#fff" fill-opacity=".8"/><path d="M16.405 29.75a13.673 13.673 0 0 0 6.036-1.595l-6.036-3.498v5.093Z" fill="#fff"/><path d="M8.669 19.247v-6.494L3.03 15.986l5.639 3.261Z" fill="#fff" fill-opacity=".8"/></svg>
292
+ */
293
+ svgWhite: string;
294
+ /**
295
+ * @description SVG representation of the model in colored format.
296
+ * @default <svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 134.95 135.02"><defs><style>.cls-1{fill:#00d3a9}.cls-2{fill:#00b39f}</style></defs><title>meshery-logo-light</title><polygon points="69.49 31.82 69.49 64.07 97.44 47.89 69.49 31.82" class="cls-1"/><polygon points="69.49 70.81 69.49 103.22 97.7 87.09 69.49 70.81" class="cls-1"/><polygon points="65.47 63.85 65.47 32.09 37.87 47.92 65.47 63.85" class="cls-2"/><path d="M10.1,103.1a67.79,67.79,0,0,0,21.41,21.55V90.71Z" class="cls-2"/><polygon points="65.47 103.06 65.47 71.05 37.8 87.07 65.47 103.06" class="cls-2"/><polygon points="35.54 122.63 63.56 106.61 35.54 90.41 35.54 122.63" class="cls-1"/><polygon points="99.61 122.8 99.61 90.63 71.63 106.63 99.61 122.8" class="cls-2"/><path d="M127,99.37a67.22,67.22,0,0,0,7.91-28.94L105.78,87.11Z" class="cls-2"/><polygon points="103.64 83.69 131.76 67.61 103.64 51.45 103.64 83.69" class="cls-1"/><polygon points="99.61 44.5 99.61 12.52 71.76 28.49 99.61 44.5" class="cls-2"/><polygon points="99.61 83.55 99.61 51.28 71.7 67.44 99.61 83.55" class="cls-2"/><polygon points="67.48 135.02 67.49 135.02 67.48 135.02 67.48 135.02" class="cls-2"/><polygon points="35.54 51.22 35.54 83.73 63.66 67.45 35.54 51.22" class="cls-1"/><path d="M65.47,0A67.2,67.2,0,0,0,35.83,7.83l29.64,17Z" class="cls-2"/><polygon points="35.54 12.3 35.54 44.62 63.68 28.48 35.54 12.3" class="cls-1"/><path d="M31.51,10.34A67.89,67.89,0,0,0,10.1,31.89L31.51,44.25Z" class="cls-2"/><path d="M99.43,8A67.23,67.23,0,0,0,69.49,0V25.15Z" class="cls-1"/><path d="M0,69.87A67.27,67.27,0,0,0,8.07,99.63L29.76,87.07Z" class="cls-1"/><path d="M8.07,35.37A67.16,67.16,0,0,0,0,65L29.79,47.91Z" class="cls-1"/><path d="M35.78,127.13A67.13,67.13,0,0,0,65.47,135V110.15Z" class="cls-2"/><path d="M124.92,32a67.9,67.9,0,0,0-21.28-21.52V44.3Z" class="cls-1"/><path d="M103.64,124.54A68,68,0,0,0,125,102.86L103.64,90.52Z" class="cls-1"/><path d="M135,64.81a67.06,67.06,0,0,0-8-29.35L105.49,47.88Z" class="cls-2"/><path d="M69.49,135a67.12,67.12,0,0,0,29.63-7.83L69.49,110Z" class="cls-1"/><polygon points="31.51 83.44 31.51 51.56 3.83 67.43 31.51 83.44" class="cls-2"/></svg>
297
+ */
298
+ svgColor: string;
299
+ /** @description SVG representation of the complete model. */
300
+ svgComplete?: string;
301
+ /**
302
+ * @description The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)
303
+ * @enum {string}
304
+ */
305
+ shape?: "ellipse" | "triangle" | "round-triangle" | "rectangle" | "round-rectangle" | "bottom-round-rectangle" | "cut-rectangle" | "barrel" | "rhomboid" | "diamond" | "round-diamond" | "pentagon" | "round-pentagon" | "hexagon" | "round-hexagon" | "concave-hexagon" | "heptagon" | "round-heptagon" | "octagon" | "round-octagon" | "star" | "tag" | "round-tag" | "vee" | "polygon";
306
+ } & {
307
+ [key: string]: unknown;
308
+ };
309
+ /** @description Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31). */
310
+ model: {
311
+ /** @description Version of the model as defined by the registrant. */
312
+ version: string;
313
+ };
314
+ /** @description The relationships of the model. */
315
+ relationships: unknown[];
316
+ /** @description The components of the model. */
317
+ components: unknown[];
318
+ /**
319
+ * @description Number of components associated with the model.
320
+ * @default 0
321
+ */
322
+ componentsCount: number;
323
+ /**
324
+ * @description Number of relationships associated with the model.
325
+ * @default 0
326
+ */
327
+ relationshipsCount: number;
328
+ /**
329
+ * Format: date-time
330
+ * @description Timestamp when the resource was created.
331
+ */
332
+ created_at?: string;
333
+ /**
334
+ * Format: date-time
335
+ * @description Timestamp when the resource was updated.
336
+ */
337
+ updated_at?: string;
338
+ };
339
+ /** @description Reference to the specific registered model to which the component belongs and from which model version, category, and other properties may be referenced. Learn more at https://docs.meshery.io/concepts/models */
340
+ modelReference: {
341
+ /**
342
+ * Format: uuid
343
+ * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
344
+ */
345
+ id: string;
346
+ /**
347
+ * @description The unique name for the model within the scope of a registrant.
348
+ * @example cert-manager
349
+ */
350
+ name: string;
351
+ /** @description Version of the model definition. */
352
+ version: string;
353
+ /**
354
+ * @description Human-readable name for the model.
355
+ * @example Cert Manager
356
+ */
357
+ displayName: string;
358
+ /** @description Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31). */
359
+ model: {
360
+ /** @description Version of the model as defined by the registrant. */
361
+ version: string;
362
+ };
363
+ registrant: {
364
+ /** @description Kind of the registrant. */
365
+ kind: string;
366
+ };
367
+ };
167
368
  /**
168
369
  * Format: uuid
169
- * @description Environment owner
370
+ * @description Foreign key to the model to which the component belongs. Populated by the ORM from the `model_id` column and suppressed on the JSON wire; consumers use the nested `model` object for wire-level access.
170
371
  */
171
- owner?: string;
372
+ modelId?: string;
373
+ /** @description Visualization styles for a component */
374
+ styles?: ({
375
+ /** @description Primary color of the component used for UI representation. */
376
+ primaryColor: string;
377
+ /** @description Secondary color of the entity used for UI representation. */
378
+ secondaryColor?: string;
379
+ /** @description White SVG of the entity used for UI representation on dark background. */
380
+ svgWhite: string;
381
+ /** @description Colored SVG of the entity used for UI representation on light background. */
382
+ svgColor: string;
383
+ /** @description Complete SVG of the entity used for UI representation, often inclusive of background. */
384
+ svgComplete: string;
385
+ /** @description The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g. */
386
+ color?: string;
387
+ /** @description The opacity of the label text, including its outline. */
388
+ textOpacity?: number;
389
+ /** @description A comma-separated list of font names to use on the label text. */
390
+ fontFamily?: string;
391
+ /** @description The size of the label text. */
392
+ fontSize?: string;
393
+ /** @description A CSS font style to be applied to the label text. */
394
+ fontStyle?: string;
395
+ /** @description A CSS font weight to be applied to the label text. */
396
+ fontWeight?: string;
397
+ /**
398
+ * @description A transformation to apply to the label text
399
+ * @enum {string}
400
+ */
401
+ textTransform?: "none" | "uppercase" | "lowercase";
402
+ /** @description The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children. */
403
+ opacity?: number;
404
+ /** @description An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index. */
405
+ zIndex?: number;
406
+ /** @description The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id */
407
+ label?: string;
408
+ /** @description The animation to apply to the element. example ripple,bounce,etc */
409
+ animation?: Record<string, never>;
410
+ } & {
411
+ [key: string]: unknown;
412
+ }) & {
413
+ /**
414
+ * @description The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)
415
+ * @enum {string}
416
+ */
417
+ shape: "ellipse" | "triangle" | "round-triangle" | "rectangle" | "round-rectangle" | "bottom-round-rectangle" | "cut-rectangle" | "barrel" | "rhomboid" | "diamond" | "round-diamond" | "pentagon" | "round-pentagon" | "hexagon" | "round-hexagon" | "concave-hexagon" | "heptagon" | "round-heptagon" | "octagon" | "round-octagon" | "star" | "tag" | "round-tag" | "vee" | "polygon";
418
+ /** @description The position of the node. If the position is set, the node is drawn at that position in the given dimensions. If the position is not set, the node is drawn at a random position. */
419
+ position?: {
420
+ /** @description The x-coordinate of the node. */
421
+ x: number;
422
+ /** @description The y-coordinate of the node. */
423
+ y: number;
424
+ };
425
+ /** @description The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id */
426
+ bodyText?: string;
427
+ /**
428
+ * @description How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.
429
+ * @enum {string}
430
+ */
431
+ bodyTextWrap?: "none" | "wrap" | "ellipsis";
432
+ /** @description The maximum width for wrapping text in the node. */
433
+ bodyTextMaxWidth?: string;
434
+ /** @description The opacity of the node's body text, including its outline. */
435
+ bodyTextOpacity?: number;
436
+ /** @description The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g. */
437
+ bodyTextBackgroundColor?: string;
438
+ /** @description The size of the node's body text. */
439
+ bodyTextFontSize?: number;
440
+ /** @description The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g. */
441
+ bodyTextColor?: string;
442
+ /** @description A CSS font weight to be applied to the node's body text. */
443
+ bodyTextFontWeight?: string;
444
+ /** @description A CSS horizontal alignment to be applied to the node's body text. */
445
+ bodyTextHorizontalAlign?: string;
446
+ /** @description A CSS text decoration to be applied to the node's body text. */
447
+ bodyTextDecoration?: string;
448
+ /** @description A CSS vertical alignment to be applied to the node's body text. */
449
+ bodyTextVerticalAlign?: string;
450
+ /** @description The width of the node's body or the width of an edge's line. */
451
+ width?: number;
452
+ /** @description The height of the node's body */
453
+ height?: number;
454
+ /**
455
+ * Format: uri
456
+ * @description The URL that points to the image to show in the node.
457
+ */
458
+ backgroundImage?: string;
459
+ /** @description The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g. */
460
+ backgroundColor?: string;
461
+ /** @description Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1. */
462
+ backgroundBlacken?: number;
463
+ /** @description The opacity level of the node's background colour */
464
+ backgroundOpacity?: number;
465
+ /** @description The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
466
+ backgroundPositionX?: string;
467
+ /** @description The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
468
+ backgroundPositionY?: string;
469
+ /** @description The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
470
+ backgroundOffsetX?: string;
471
+ /** @description The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
472
+ backgroundOffsetY?: string;
473
+ /**
474
+ * @description How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.
475
+ * @enum {string}
476
+ */
477
+ backgroundFit?: "none" | "contain" | "cover";
478
+ /**
479
+ * @description How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.
480
+ * @enum {string}
481
+ */
482
+ backgroundClip?: "none" | "node" | "node-border";
483
+ /**
484
+ * @description How the background image's width is determined. Can be 'none', 'inner', or 'outer'.
485
+ * @enum {string}
486
+ */
487
+ backgroundWidthRelativeTo?: "none" | "inner" | "outer";
488
+ /**
489
+ * @description How the background image's height is determined. Can be 'none', 'inner', or 'outer'.
490
+ * @enum {string}
491
+ */
492
+ backgroundHeightRelativeTo?: "none" | "inner" | "outer";
493
+ /** @description The size of the node's border. */
494
+ borderWidth?: number;
495
+ /**
496
+ * @description The style of the node's border
497
+ * @enum {string}
498
+ */
499
+ borderStyle?: "solid" | "dotted" | "dashed" | "double";
500
+ /** @description The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g. */
501
+ borderColor?: string;
502
+ /** @description The opacity of the node's border */
503
+ borderOpacity?: number;
504
+ /** @description The amount of padding around all sides of the node. */
505
+ padding?: number;
506
+ /**
507
+ * @description The horizontal alignment of a node's label
508
+ * @enum {string}
509
+ */
510
+ textHalign?: "left" | "center" | "right";
511
+ /**
512
+ * @description The vertical alignment of a node's label
513
+ * @enum {string}
514
+ */
515
+ textValign?: "top" | "center" | "bottom";
516
+ /**
517
+ * @description Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.
518
+ * @default no
519
+ * @enum {string}
520
+ */
521
+ ghost: "yes" | "no";
522
+ /** @description The colour of the indicator shown when the background is grabbed by the user. Selector needs to be *core*. Colours may be specified by name (e.g. red), hex (e.g. */
523
+ activeBgColor?: string;
524
+ /** @description The opacity of the active background indicator. Selector needs to be *core*. */
525
+ activeBgOpacity?: string;
526
+ /** @description The opacity of the active background indicator. Selector needs to be *core*. */
527
+ activeBgSize?: string;
528
+ /** @description The background colour of the selection box used for drag selection. Selector needs to be *core*. Colours may be specified by name (e.g. red), hex (e.g. */
529
+ selectionBoxColor?: string;
530
+ /** @description The size of the border on the selection box. Selector needs to be *core* */
531
+ selectionBoxBorderWidth?: number;
532
+ /** @description The opacity of the selection box. Selector needs to be *core* */
533
+ selectionBoxOpacity?: number;
534
+ /** @description The colour of the area outside the viewport texture when initOptions.textureOnViewport === true. Selector needs to be *core*. Colours may be specified by name (e.g. red), hex (e.g. */
535
+ outsideTextureBgColor?: string;
536
+ /** @description The opacity of the area outside the viewport texture. Selector needs to be *core* */
537
+ outsideTextureBgOpacity?: number;
538
+ /** @description An array (or a space-separated string) of numbers ranging on [-1, 1], representing alternating x and y values (i.e. x1 y1 x2 y2, x3 y3 ...). This represents the points in the polygon for the node's shape. The bounding box of the node is given by (-1, -1), (1, -1), (1, 1), (-1, 1). The node's position is the origin (0, 0 ) */
539
+ shapePolygonPoints?: string;
540
+ /** @description The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g. */
541
+ menuBackgroundColor?: string;
542
+ /** @description The opacity of the background of the component menu. */
543
+ menuBackgroundOpacity?: number;
544
+ /** @description The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g. */
545
+ menuForgroundColor?: string;
546
+ };
172
547
  /**
173
- * Format: date-time
174
- * @description Timestamp when the resource was created.
548
+ * @description Meshery manages components in accordance with their specific capabilities. This field explicitly identifies those capabilities largely by what actions a given component supports; e.g. metric-scrape, sub-interface, and so on. This field is extensible. ComponentDefinitions may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.
549
+ * @default [
550
+ * {
551
+ * "schemaVersion": "capability.meshery.io/v1beta1",
552
+ * "version": "0.7.0",
553
+ * "displayName": "Performance Test",
554
+ * "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
555
+ * "kind": "action",
556
+ * "type": "operator",
557
+ * "subType": "perf-test",
558
+ * "key": "",
559
+ * "entityState": [
560
+ * "instance"
561
+ * ],
562
+ * "status": "enabled",
563
+ * "metadata": null
564
+ * },
565
+ * {
566
+ * "schemaVersion": "capability.meshery.io/v1beta1",
567
+ * "version": "0.7.0",
568
+ * "displayName": "Workload Configuration",
569
+ * "description": "Configure the workload specific setting of a component",
570
+ * "kind": "mutate",
571
+ * "type": "configuration",
572
+ * "subType": "config",
573
+ * "key": "",
574
+ * "entityState": [
575
+ * "declaration"
576
+ * ],
577
+ * "status": "enabled",
578
+ * "metadata": null
579
+ * },
580
+ * {
581
+ * "schemaVersion": "capability.meshery.io/v1beta1",
582
+ * "version": "0.7.0",
583
+ * "displayName": "Labels and Annotations Configuration",
584
+ * "description": "Configure Labels And Annotations for the component",
585
+ * "kind": "mutate",
586
+ * "type": "configuration",
587
+ * "subType": "labels-and-annotations",
588
+ * "key": "",
589
+ * "entityState": [
590
+ * "declaration"
591
+ * ],
592
+ * "status": "enabled",
593
+ * "metadata": null
594
+ * },
595
+ * {
596
+ * "schemaVersion": "capability.meshery.io/v1beta1",
597
+ * "version": "0.7.0",
598
+ * "displayName": "Relationships",
599
+ * "description": "View relationships for the component",
600
+ * "kind": "view",
601
+ * "type": "configuration",
602
+ * "subType": "relationship",
603
+ * "key": "",
604
+ * "entityState": [
605
+ * "declaration",
606
+ * "instance"
607
+ * ],
608
+ * "status": "enabled",
609
+ * "metadata": null
610
+ * },
611
+ * {
612
+ * "schemaVersion": "capability.meshery.io/v1beta1",
613
+ * "version": "0.7.0",
614
+ * "displayName": "Json Schema",
615
+ * "description": "View Component Definition ",
616
+ * "kind": "view",
617
+ * "type": "configuration",
618
+ * "subType": "definition",
619
+ * "key": "",
620
+ * "entityState": [
621
+ * "declaration",
622
+ * "instance"
623
+ * ],
624
+ * "status": "enabled",
625
+ * "metadata": null
626
+ * },
627
+ * {
628
+ * "schemaVersion": "capability.meshery.io/v1beta1",
629
+ * "version": "0.7.0",
630
+ * "displayName": "Styling",
631
+ * "description": "Configure the visual styles for the component",
632
+ * "kind": "mutate",
633
+ * "type": "style",
634
+ * "subType": "",
635
+ * "key": "",
636
+ * "entityState": [
637
+ * "declaration"
638
+ * ],
639
+ * "status": "enabled",
640
+ * "metadata": null
641
+ * },
642
+ * {
643
+ * "schemaVersion": "capability.meshery.io/v1beta1",
644
+ * "version": "0.7.0",
645
+ * "displayName": "Change Shape",
646
+ * "description": "Change the shape of the component",
647
+ * "kind": "mutate",
648
+ * "type": "style",
649
+ * "subType": "shape",
650
+ * "key": "",
651
+ * "entityState": [
652
+ * "declaration"
653
+ * ],
654
+ * "status": "enabled",
655
+ * "metadata": null
656
+ * },
657
+ * {
658
+ * "schemaVersion": "capability.meshery.io/v1beta1",
659
+ * "version": "0.7.0",
660
+ * "displayName": "Compound Drag And Drop",
661
+ * "description": "Drag and Drop a component into a parent component in graph view",
662
+ * "kind": "interaction",
663
+ * "type": "graph",
664
+ * "subType": "compoundDnd",
665
+ * "key": "",
666
+ * "entityState": [
667
+ * "declaration"
668
+ * ],
669
+ * "status": "enabled",
670
+ * "metadata": null
671
+ * }
672
+ * ]
175
673
  */
176
- created_at?: string;
177
- /** @description Additional metadata associated with the environment. */
178
- metadata?: { [key: string]: unknown };
674
+ capabilities: {
675
+ /**
676
+ * @description Specifies the version of the schema to which the capability definition conforms.
677
+ * @example [
678
+ * "v1",
679
+ * "v1alpha1",
680
+ * "v2beta3",
681
+ * "v1.custom-suffix",
682
+ * "models.meshery.io/v1beta1",
683
+ * "capability.meshery.io/v1alpha1"
684
+ * ]
685
+ */
686
+ schemaVersion: string;
687
+ /** @description Version of the capability definition. */
688
+ version: string;
689
+ /** @description Name of the capability in human-readible format. */
690
+ displayName: string;
691
+ /** @description A written representation of the purpose and characteristics of the capability. */
692
+ description: string;
693
+ /** @description Top-level categorization of the capability */
694
+ kind: string | "action" | "mutate" | "view" | "interaction";
695
+ /** @description Classification of capabilities. Used to group capabilities similar in nature. */
696
+ type: string;
697
+ /** @description Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability. */
698
+ subType: string;
699
+ /** @description Key that backs the capability. */
700
+ key: string;
701
+ /** @description State of the entity in which the capability is applicable. */
702
+ entityState: ("declaration" | "instance")[];
703
+ /**
704
+ * @description Status of the capability
705
+ * @default enabled
706
+ * @enum {string}
707
+ */
708
+ status: "enabled" | "disabled";
709
+ /** @description Metadata contains additional information associated with the capability. Extension point. */
710
+ metadata?: {
711
+ [key: string]: unknown;
712
+ };
713
+ }[];
179
714
  /**
180
- * Format: date-time
181
- * @description Timestamp when the resource was updated.
715
+ * @description Status of component, including:
716
+ * - duplicate: this component is a duplicate of another. The component that is to be the canonical reference and that is duplicated by other components should not be assigned the 'duplicate' status.
717
+ * - maintenance: model is unavailable for a period of time.
718
+ * - enabled: model is available for use for all users of this Meshery Server.
719
+ * - ignored: model is unavailable for use for all users of this Meshery Server.
720
+ * @default enabled
721
+ * @enum {string}
182
722
  */
183
- updated_at?: string;
723
+ status: "ignored" | "enabled" | "duplicate" | "resolved" | "open";
724
+ /** @description Metadata contains additional information associated with the component. */
725
+ metadata: {
726
+ /** @description Genealogy represents the various representational states of the component. */
727
+ genealogy: string;
728
+ /**
729
+ * @description Identifies whether the component is semantically meaningful or not; identifies whether the component should be treated as deployable entity or is for purposes of logical representation.
730
+ * @default false
731
+ */
732
+ isAnnotation: boolean;
733
+ /** @description Identifies whether the component is scoped to namespace or cluster wide. */
734
+ isNamespaced: boolean;
735
+ /** @description 'published' controls whether the component should be registered in Meshery Registry. When the same 'published' property in Models, is set to 'false', the Model property takes precedence with all Entities in the Model not being registered. */
736
+ published: boolean;
737
+ /** @description InstanceDetails contains information about the instance of the component. */
738
+ instanceDetails: Record<string, never>;
739
+ /** @description Defines the UI schema for rendering the component's configuration. For more details, visit: https://rjsf-team.github.io/react-jsonschema-form/docs/api-reference/uiSchema/ . */
740
+ configurationUISchema: string;
741
+ } & {
742
+ [key: string]: unknown;
743
+ };
744
+ /** @description The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema). */
745
+ configuration: Record<string, never>;
746
+ /** @description Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object. */
747
+ component: {
748
+ /** @description Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod. */
749
+ version: string;
750
+ /** @description The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'. */
751
+ kind: string;
752
+ /** @description JSON schema of the object as defined by the registrant. */
753
+ schema: string;
754
+ };
184
755
  /**
185
756
  * Format: date-time
186
- * @description Timestamp when the environment was soft deleted. Null while the environment remains active.
757
+ * @description Timestamp when the component was created.
187
758
  */
188
- deleted_at?: string | null;
189
- }[];
190
- /**
191
- * @description Specifies the version of the schema used for the definition.
192
- * @default connections.meshery.io/v1beta1
193
- * @example [
194
- * "v1",
195
- * "v1alpha1",
196
- * "v2beta3",
197
- * "v1.custom-suffix",
198
- * "models.meshery.io/v1beta1",
199
- * "capability.meshery.io/v1alpha1"
200
- * ]
201
- */
202
- schemaVersion: string;
203
- };
204
- /**
205
- * Format: uuid
206
- * @description ID of the registrant.
207
- */
208
- registrantId: string;
209
- /**
210
- * Format: uuid
211
- * @description ID of the category.
212
- */
213
- categoryId: string;
214
- /** @description Category of the model. */
215
- category: {
216
- /**
217
- * Format: uuid
218
- * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
219
- */
220
- id: string;
221
- /**
222
- * @description The category of the model that determines the main grouping.
223
- * @default Uncategorized
224
- * @enum {string}
225
- */
226
- name:
227
- | "Analytics"
228
- | "App Definition and Development"
229
- | "Cloud Native Network"
230
- | "Cloud Native Storage"
231
- | "Database"
232
- | "Machine Learning"
233
- | "Observability and Analysis"
234
- | "Orchestration & Management"
235
- | "Platform"
236
- | "Provisioning"
237
- | "Runtime"
238
- | "Security & Compliance"
239
- | "Serverless"
240
- | "Tools"
241
- | "Uncategorized";
242
- /** @description Additional metadata associated with the category. */
243
- metadata: { [key: string]: unknown };
244
- };
245
- /**
246
- * SubCategory
247
- * @description Sub category of the model determines the secondary grouping.
248
- * @default Uncategorized
249
- * @enum {string}
250
- */
251
- subCategory:
252
- | "API Gateway"
253
- | "API Integration"
254
- | "Application Definition & Image Build"
255
- | "Automation & Configuration"
256
- | "Certified Kubernetes - Distribution"
257
- | "Chaos Engineering"
258
- | "Cloud Native Storage"
259
- | "Cloud Provider"
260
- | "CNI"
261
- | "Compute"
262
- | "Container Registry"
263
- | "Container Runtime"
264
- | "Container Security"
265
- | "Container"
266
- | "Content Delivery Network"
267
- | "Continuous Integration & Delivery"
268
- | "Coordination & Service Discovery"
269
- | "Database"
270
- | "Flowchart"
271
- | "Framework"
272
- | "Installable Platform"
273
- | "Key Management"
274
- | "Key Management Service"
275
- | "Kubernetes"
276
- | "Logging"
277
- | "Machine Learning"
278
- | "Management Governance"
279
- | "Metrics"
280
- | "Monitoring"
281
- | "Networking Content Delivery"
282
- | "Operating System"
283
- | "Query"
284
- | "Remote Procedure Call"
285
- | "Scheduling & Orchestration"
286
- | "Secrets Management"
287
- | "Security Identity & Compliance"
288
- | "Service Mesh"
289
- | "Service Proxy"
290
- | "Source Version Control"
291
- | "Storage"
292
- | "Specifications"
293
- | "Streaming & Messaging"
294
- | "Tools"
295
- | "Tracing"
296
- | "Uncategorized"
297
- | "Video Conferencing";
298
- /** @description Metadata containing additional information associated with the model. */
299
- metadata?: {
300
- /** @description Capabilities associated with the model */
301
- capabilities?: {
759
+ createdAt: string;
302
760
  /**
303
- * @description Specifies the version of the schema to which the capability definition conforms.
304
- * @example [
305
- * "v1",
306
- * "v1alpha1",
307
- * "v2beta3",
308
- * "v1.custom-suffix",
309
- * "models.meshery.io/v1beta1",
310
- * "capability.meshery.io/v1alpha1"
311
- * ]
761
+ * Format: date-time
762
+ * @description Timestamp when the component was last updated.
312
763
  */
313
- schemaVersion: string;
314
- /** @description Version of the capability definition. */
315
- version: string;
316
- /** @description Name of the capability in human-readible format. */
317
- displayName: string;
318
- /** @description A written representation of the purpose and characteristics of the capability. */
319
- description: string;
320
- /** @description Top-level categorization of the capability */
321
- kind: string;
322
- /** @description Classification of capabilities. Used to group capabilities similar in nature. */
323
- type: string;
324
- /** @description Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability. */
325
- subType: string;
326
- /** @description Key that backs the capability. */
327
- key: string;
328
- /** @description State of the entity in which the capability is applicable. */
329
- entityState: ("declaration" | "instance")[];
764
+ updatedAt: string;
330
765
  /**
331
- * @description Status of the capability
332
- * @default enabled
333
- * @enum {string}
766
+ * Format: date-time
767
+ * @description Timestamp when the component was soft-deleted. Null while the component is active.
334
768
  */
335
- status: "enabled" | "disabled";
336
- /** @description Metadata contains additional information associated with the capability. Extension point. */
337
- metadata?: { [key: string]: unknown };
338
- }[];
339
- /**
340
- * @description Indicates whether the model and its entities should be treated as deployable entities or as logical representations.
341
- * @default false
342
- */
343
- isAnnotation?: boolean;
344
- /**
345
- * @description Primary color associated with the model.
346
- * @default #00b39f
347
- */
348
- primaryColor?: string;
349
- /**
350
- * @description Secondary color associated with the model.
351
- * @default #00D3A9
352
- */
353
- secondaryColor?: string;
354
- /**
355
- * @description SVG representation of the model in white color.
356
- * @default <svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16.405 8.732v6.57l5.694-3.297-5.694-3.273Zm0 7.942v6.602l5.747-3.285-5.747-3.317Z" fill="#fff"/><path d="M15.586 15.256v-6.47l-5.622 3.225 5.622 3.245ZM4.307 23.252a13.809 13.809 0 0 0 4.362 4.39v-6.914l-4.362 2.524Zm11.279-.008v-6.52L9.95 19.985l5.636 3.258Z" fill="#fff" fill-opacity=".8"/><path d="m9.49 27.23 5.707-3.263-5.707-3.3v6.563Z" fill="#fff"/><path d="M22.54 27.265v-6.553l-5.699 3.259 5.7 3.294Zm5.58-4.773a13.697 13.697 0 0 0 1.612-5.895l-5.934 3.397 4.323 2.498Z" fill="#fff" fill-opacity=".8"/><path d="m23.362 19.298 5.728-3.276-5.728-3.291v6.567Z" fill="#fff"/><path d="M22.541 11.315V4.8l-5.673 3.253 5.673 3.262Zm0 7.955v-6.574l-5.685 3.292 5.685 3.281Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 12.684v6.622l5.728-3.316-5.728-3.306Z" fill="#fff"/><path d="M15.586 2.25a13.69 13.69 0 0 0-6.037 1.595l6.037 3.463V2.25Z" fill="#fff" fill-opacity=".8"/><path d="M9.49 4.756v6.583l5.732-3.288L9.49 4.756Z" fill="#fff"/><path d="M8.669 4.356a13.83 13.83 0 0 0-4.362 4.39l4.362 2.518V4.356Z" fill="#fff" fill-opacity=".8"/><path d="M22.504 3.88a13.695 13.695 0 0 0-6.099-1.63v5.123l6.1-3.493ZM2.25 16.483c.071 2.12.634 4.196 1.644 6.062l4.418-2.559-6.062-3.503Zm1.644-7.028a13.68 13.68 0 0 0-1.644 6.036l6.068-3.482-4.424-2.554Z" fill="#fff"/><path d="M9.539 28.147a13.673 13.673 0 0 0 6.047 1.603v-5.062L9.54 28.147Z" fill="#fff" fill-opacity=".8"/><path d="M27.697 8.768a13.83 13.83 0 0 0-4.335-4.383v6.889l4.335-2.506ZM23.362 27.62a13.851 13.851 0 0 0 4.351-4.417l-4.351-2.514v6.93Z" fill="#fff"/><path d="M29.75 15.452a13.659 13.659 0 0 0-1.63-5.979l-4.381 2.53 6.011 3.45Z" fill="#fff" fill-opacity=".8"/><path d="M16.405 29.75a13.673 13.673 0 0 0 6.036-1.595l-6.036-3.498v5.093Z" fill="#fff"/><path d="M8.669 19.247v-6.494L3.03 15.986l5.639 3.261Z" fill="#fff" fill-opacity=".8"/></svg>
357
- */
358
- svgWhite: string;
359
- /**
360
- * @description SVG representation of the model in colored format.
361
- * @default <svg xmlns="http://www.w3.org/2000/svg" id="Layer_1" data-name="Layer 1" viewBox="0 0 134.95 135.02"><defs><style>.cls-1{fill:#00d3a9}.cls-2{fill:#00b39f}</style></defs><title>meshery-logo-light</title><polygon points="69.49 31.82 69.49 64.07 97.44 47.89 69.49 31.82" class="cls-1"/><polygon points="69.49 70.81 69.49 103.22 97.7 87.09 69.49 70.81" class="cls-1"/><polygon points="65.47 63.85 65.47 32.09 37.87 47.92 65.47 63.85" class="cls-2"/><path d="M10.1,103.1a67.79,67.79,0,0,0,21.41,21.55V90.71Z" class="cls-2"/><polygon points="65.47 103.06 65.47 71.05 37.8 87.07 65.47 103.06" class="cls-2"/><polygon points="35.54 122.63 63.56 106.61 35.54 90.41 35.54 122.63" class="cls-1"/><polygon points="99.61 122.8 99.61 90.63 71.63 106.63 99.61 122.8" class="cls-2"/><path d="M127,99.37a67.22,67.22,0,0,0,7.91-28.94L105.78,87.11Z" class="cls-2"/><polygon points="103.64 83.69 131.76 67.61 103.64 51.45 103.64 83.69" class="cls-1"/><polygon points="99.61 44.5 99.61 12.52 71.76 28.49 99.61 44.5" class="cls-2"/><polygon points="99.61 83.55 99.61 51.28 71.7 67.44 99.61 83.55" class="cls-2"/><polygon points="67.48 135.02 67.49 135.02 67.48 135.02 67.48 135.02" class="cls-2"/><polygon points="35.54 51.22 35.54 83.73 63.66 67.45 35.54 51.22" class="cls-1"/><path d="M65.47,0A67.2,67.2,0,0,0,35.83,7.83l29.64,17Z" class="cls-2"/><polygon points="35.54 12.3 35.54 44.62 63.68 28.48 35.54 12.3" class="cls-1"/><path d="M31.51,10.34A67.89,67.89,0,0,0,10.1,31.89L31.51,44.25Z" class="cls-2"/><path d="M99.43,8A67.23,67.23,0,0,0,69.49,0V25.15Z" class="cls-1"/><path d="M0,69.87A67.27,67.27,0,0,0,8.07,99.63L29.76,87.07Z" class="cls-1"/><path d="M8.07,35.37A67.16,67.16,0,0,0,0,65L29.79,47.91Z" class="cls-1"/><path d="M35.78,127.13A67.13,67.13,0,0,0,65.47,135V110.15Z" class="cls-2"/><path d="M124.92,32a67.9,67.9,0,0,0-21.28-21.52V44.3Z" class="cls-1"/><path d="M103.64,124.54A68,68,0,0,0,125,102.86L103.64,90.52Z" class="cls-1"/><path d="M135,64.81a67.06,67.06,0,0,0-8-29.35L105.49,47.88Z" class="cls-2"/><path d="M69.49,135a67.12,67.12,0,0,0,29.63-7.83L69.49,110Z" class="cls-1"/><polygon points="31.51 83.44 31.51 51.56 3.83 67.43 31.51 83.44" class="cls-2"/></svg>
362
- */
363
- svgColor: string;
364
- /** @description SVG representation of the complete model. */
365
- svgComplete?: string;
366
- /**
367
- * @description The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)
368
- * @enum {string}
369
- */
370
- shape?:
371
- | "ellipse"
372
- | "triangle"
373
- | "round-triangle"
374
- | "rectangle"
375
- | "round-rectangle"
376
- | "bottom-round-rectangle"
377
- | "cut-rectangle"
378
- | "barrel"
379
- | "rhomboid"
380
- | "diamond"
381
- | "round-diamond"
382
- | "pentagon"
383
- | "round-pentagon"
384
- | "hexagon"
385
- | "round-hexagon"
386
- | "concave-hexagon"
387
- | "heptagon"
388
- | "round-heptagon"
389
- | "octagon"
390
- | "round-octagon"
391
- | "star"
392
- | "tag"
393
- | "round-tag"
394
- | "vee"
395
- | "polygon";
396
- } & { [key: string]: unknown };
397
- /** @description Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31). */
398
- model: {
399
- /** @description Version of the model as defined by the registrant. */
400
- version: string;
769
+ deletedAt?: string;
401
770
  };
402
- /** @description The relationships of the model. */
403
- relationships: unknown[];
404
- /** @description The components of the model. */
405
- components: unknown[];
406
- /**
407
- * @description Number of components associated with the model.
408
- * @default 0
409
- */
410
- componentsCount: number;
411
- /**
412
- * @description Number of relationships associated with the model.
413
- * @default 0
414
- */
415
- relationshipsCount: number;
416
- /**
417
- * Format: date-time
418
- * @description Timestamp when the resource was created.
419
- */
420
- created_at?: string;
421
- /**
422
- * Format: date-time
423
- * @description Timestamp when the resource was updated.
424
- */
425
- updated_at?: string;
426
- };
427
- /** @description Reference to the specific registered model to which the component belongs and from which model version, category, and other properties may be referenced. Learn more at https://docs.meshery.io/concepts/models */
428
- modelReference: {
429
- /**
430
- * Format: uuid
431
- * @description A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.
432
- */
433
- id: string;
434
- /** @description The unique name for the model within the scope of a registrant. */
435
- name: string;
436
- /** @description Version of the model definition. */
437
- version: string;
438
- /** @description Human-readable name for the model. */
439
- displayName: string;
440
- /** @description Registrant-defined data associated with the model. Properties pertain to the software being managed (e.g. Kubernetes v1.31). */
441
- model: {
442
- /** @description Version of the model as defined by the registrant. */
443
- version: string;
444
- };
445
- registrant: {
446
- /** @description Kind of the registrant. */
447
- kind: string;
448
- };
449
- };
450
- /**
451
- * Format: uuid
452
- * @description Foreign key to the model to which the component belongs. Populated by the ORM from the `model_id` column and suppressed on the JSON wire; consumers use the nested `model` object for wire-level access.
453
- */
454
- modelId?: string;
455
- /** @description Visualization styles for a component */
456
- styles?: ({
457
- /** @description Primary color of the component used for UI representation. */
458
- primaryColor: string;
459
- /** @description Secondary color of the entity used for UI representation. */
460
- secondaryColor?: string;
461
- /** @description White SVG of the entity used for UI representation on dark background. */
462
- svgWhite: string;
463
- /** @description Colored SVG of the entity used for UI representation on light background. */
464
- svgColor: string;
465
- /** @description Complete SVG of the entity used for UI representation, often inclusive of background. */
466
- svgComplete: string;
467
- /** @description The color of the element's label. Colours may be specified by name (e.g. red), hex (e.g. */
468
- color?: string;
469
- /** @description The opacity of the label text, including its outline. */
470
- textOpacity?: number;
471
- /** @description A comma-separated list of font names to use on the label text. */
472
- fontFamily?: string;
473
- /** @description The size of the label text. */
474
- fontSize?: string;
475
- /** @description A CSS font style to be applied to the label text. */
476
- fontStyle?: string;
477
- /** @description A CSS font weight to be applied to the label text. */
478
- fontWeight?: string;
479
- /**
480
- * @description A transformation to apply to the label text
481
- * @enum {string}
482
- */
483
- textTransform?: "none" | "uppercase" | "lowercase";
484
- /** @description The opacity of the element, ranging from 0 to 1. Note that the opacity of a compound node parent affects the effective opacity of its children. */
485
- opacity?: number;
486
- /** @description An integer value that affects the relative draw order of elements. In general, an element with a higher z-index will be drawn on top of an element with a lower z-index. Note that edges are under nodes despite z-index. */
487
- zIndex?: number;
488
- /** @description The text to display for an element's label. Can give a path, e.g. data(id) will label with the elements id */
489
- label?: string;
490
- /** @description The animation to apply to the element. example ripple,bounce,etc */
491
- animation?: { [key: string]: unknown };
492
- } & { [key: string]: unknown }) & {
493
- /**
494
- * @description The shape of the node's body. Note that each shape fits within the specified width and height, and so you may have to adjust width and height if you desire an equilateral shape (i.e. width !== height for several equilateral shapes)
495
- * @enum {string}
496
- */
497
- shape?:
498
- | "ellipse"
499
- | "triangle"
500
- | "round-triangle"
501
- | "rectangle"
502
- | "round-rectangle"
503
- | "bottom-round-rectangle"
504
- | "cut-rectangle"
505
- | "barrel"
506
- | "rhomboid"
507
- | "diamond"
508
- | "round-diamond"
509
- | "pentagon"
510
- | "round-pentagon"
511
- | "hexagon"
512
- | "round-hexagon"
513
- | "concave-hexagon"
514
- | "heptagon"
515
- | "round-heptagon"
516
- | "octagon"
517
- | "round-octagon"
518
- | "star"
519
- | "tag"
520
- | "round-tag"
521
- | "vee"
522
- | "polygon";
523
- /** @description The position of the node. If the position is set, the node is drawn at that position in the given dimensions. If the position is not set, the node is drawn at a random position. */
524
- position?: {
525
- /** @description The x-coordinate of the node. */
526
- x: number;
527
- /** @description The y-coordinate of the node. */
528
- y: number;
771
+ /** @description Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object. */
772
+ Component: {
773
+ /** @description Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod. */
774
+ version: string;
775
+ /** @description The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'. */
776
+ kind: string;
777
+ /** @description JSON schema of the object as defined by the registrant. */
778
+ schema: string;
529
779
  };
530
- /** @description The text to display for an element's body. Can give a path, e.g. data(id) will label with the elements id */
531
- bodyText?: string;
532
- /**
533
- * @description How to wrap the text in the node. Can be 'none', 'wrap', or 'ellipsis'.
534
- * @enum {string}
535
- */
536
- bodyTextWrap?: "none" | "wrap" | "ellipsis";
537
- /** @description The maximum width for wrapping text in the node. */
538
- bodyTextMaxWidth?: string;
539
- /** @description The opacity of the node's body text, including its outline. */
540
- bodyTextOpacity?: number;
541
- /** @description The colour of the node's body text background. Colours may be specified by name (e.g. red), hex (e.g. */
542
- bodyTextBackgroundColor?: string;
543
- /** @description The size of the node's body text. */
544
- bodyTextFontSize?: number;
545
- /** @description The colour of the node's body text. Colours may be specified by name (e.g. red), hex (e.g. */
546
- bodyTextColor?: string;
547
- /** @description A CSS font weight to be applied to the node's body text. */
548
- bodyTextFontWeight?: string;
549
- /** @description A CSS horizontal alignment to be applied to the node's body text. */
550
- bodyTextHorizontalAlign?: string;
551
- /** @description A CSS text decoration to be applied to the node's body text. */
552
- bodyTextDecoration?: string;
553
- /** @description A CSS vertical alignment to be applied to the node's body text. */
554
- bodyTextVerticalAlign?: string;
555
- /** @description The width of the node's body or the width of an edge's line. */
556
- width?: number;
557
- /** @description The height of the node's body */
558
- height?: number;
559
- /**
560
- * Format: uri
561
- * @description The URL that points to the image to show in the node.
562
- */
563
- backgroundImage?: string;
564
- /** @description The colour of the node's body. Colours may be specified by name (e.g. red), hex (e.g. */
565
- backgroundColor?: string;
566
- /** @description Blackens the node's body for values from 0 to 1; whitens the node's body for values from 0 to -1. */
567
- backgroundBlacken?: number;
568
- /** @description The opacity level of the node's background colour */
569
- backgroundOpacity?: number;
570
- /** @description The x position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
571
- backgroundPositionX?: string;
572
- /** @description The y position of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
573
- backgroundPositionY?: string;
574
- /** @description The x offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
575
- backgroundOffsetX?: string;
576
- /** @description The y offset of the background image, measured in percent (e.g. 50%) or pixels (e.g. 10px) */
577
- backgroundOffsetY?: string;
578
- /**
579
- * @description How the background image is fit to the node. Can be 'none', 'contain', or 'cover'.
580
- * @enum {string}
581
- */
582
- backgroundFit?: "none" | "contain" | "cover";
583
- /**
584
- * @description How the background image is clipped to the node. Can be 'none', 'node', or 'node-border'.
585
- * @enum {string}
586
- */
587
- backgroundClip?: "none" | "node" | "node-border";
588
- /**
589
- * @description How the background image's width is determined. Can be 'none', 'inner', or 'outer'.
590
- * @enum {string}
591
- */
592
- backgroundWidthRelativeTo?: "none" | "inner" | "outer";
593
- /**
594
- * @description How the background image's height is determined. Can be 'none', 'inner', or 'outer'.
595
- * @enum {string}
596
- */
597
- backgroundHeightRelativeTo?: "none" | "inner" | "outer";
598
- /** @description The size of the node's border. */
599
- borderWidth?: number;
600
- /**
601
- * @description The style of the node's border
602
- * @enum {string}
603
- */
604
- borderStyle?: "solid" | "dotted" | "dashed" | "double";
605
- /** @description The colour of the node's border. Colours may be specified by name (e.g. red), hex (e.g. */
606
- borderColor?: string;
607
- /** @description The opacity of the node's border */
608
- borderOpacity?: number;
609
- /** @description The amount of padding around all sides of the node. */
610
- padding?: number;
611
- /**
612
- * @description The horizontal alignment of a node's label
613
- * @enum {string}
614
- */
615
- textHalign?: "left" | "center" | "right";
616
- /**
617
- * @description The vertical alignment of a node's label
618
- * @enum {string}
619
- */
620
- textValign?: "top" | "center" | "bottom";
621
- /**
622
- * @description Whether to use the ghost effect, a semitransparent duplicate of the element drawn at an offset.
623
- * @default no
624
- * @enum {string}
625
- */
626
- ghost?: "yes" | "no";
627
- /** @description The colour of the indicator shown when the background is grabbed by the user. Selector needs to be *core*. Colours may be specified by name (e.g. red), hex (e.g. */
628
- activeBgColor?: string;
629
- /** @description The opacity of the active background indicator. Selector needs to be *core*. */
630
- activeBgOpacity?: string;
631
- /** @description The opacity of the active background indicator. Selector needs to be *core*. */
632
- activeBgSize?: string;
633
- /** @description The background colour of the selection box used for drag selection. Selector needs to be *core*. Colours may be specified by name (e.g. red), hex (e.g. */
634
- selectionBoxColor?: string;
635
- /** @description The size of the border on the selection box. Selector needs to be *core* */
636
- selectionBoxBorderWidth?: number;
637
- /** @description The opacity of the selection box. Selector needs to be *core* */
638
- selectionBoxOpacity?: number;
639
- /** @description The colour of the area outside the viewport texture when initOptions.textureOnViewport === true. Selector needs to be *core*. Colours may be specified by name (e.g. red), hex (e.g. */
640
- outsideTextureBgColor?: string;
641
- /** @description The opacity of the area outside the viewport texture. Selector needs to be *core* */
642
- outsideTextureBgOpacity?: number;
643
- /** @description An array (or a space-separated string) of numbers ranging on [-1, 1], representing alternating x and y values (i.e. x1 y1 x2 y2, x3 y3 ...). This represents the points in the polygon for the node's shape. The bounding box of the node is given by (-1, -1), (1, -1), (1, 1), (-1, 1). The node's position is the origin (0, 0 ) */
644
- shapePolygonPoints?: string;
645
- /** @description The colour of the background of the component menu. Colours may be specified by name (e.g. red), hex (e.g. */
646
- menuBackgroundColor?: string;
647
- /** @description The opacity of the background of the component menu. */
648
- menuBackgroundOpacity?: number;
649
- /** @description The colour of the text or icons in the component menu. Colours may be specified by name (e.g. red), hex (e.g. */
650
- menuForgroundColor?: string;
651
- } & {
652
- shape: unknown;
653
- primaryColor: unknown;
654
- svgColor: unknown;
655
- svgWhite: unknown;
656
- svgComplete: unknown;
657
- };
658
- /**
659
- * @description Meshery manages components in accordance with their specific capabilities. This field explicitly identifies those capabilities largely by what actions a given component supports; e.g. metric-scrape, sub-interface, and so on. This field is extensible. ComponentDefinitions may define a broad array of capabilities, which are in-turn dynamically interpretted by Meshery for full lifecycle management.
660
- * @default [
661
- * {
662
- * "schemaVersion": "capability.meshery.io/v1beta1",
663
- * "version": "0.7.0",
664
- * "displayName": "Performance Test",
665
- * "description": "Initiate a performance test. Meshery will execute the load generation, collect metrics, and present the results.",
666
- * "kind": "action",
667
- * "type": "operator",
668
- * "subType": "perf-test",
669
- * "key": "",
670
- * "entityState": [
671
- * "instance"
672
- * ],
673
- * "status": "enabled",
674
- * "metadata": null
675
- * },
676
- * {
677
- * "schemaVersion": "capability.meshery.io/v1beta1",
678
- * "version": "0.7.0",
679
- * "displayName": "Workload Configuration",
680
- * "description": "Configure the workload specific setting of a component",
681
- * "kind": "mutate",
682
- * "type": "configuration",
683
- * "subType": "config",
684
- * "key": "",
685
- * "entityState": [
686
- * "declaration"
687
- * ],
688
- * "status": "enabled",
689
- * "metadata": null
690
- * },
691
- * {
692
- * "schemaVersion": "capability.meshery.io/v1beta1",
693
- * "version": "0.7.0",
694
- * "displayName": "Labels and Annotations Configuration",
695
- * "description": "Configure Labels And Annotations for the component",
696
- * "kind": "mutate",
697
- * "type": "configuration",
698
- * "subType": "labels-and-annotations",
699
- * "key": "",
700
- * "entityState": [
701
- * "declaration"
702
- * ],
703
- * "status": "enabled",
704
- * "metadata": null
705
- * },
706
- * {
707
- * "schemaVersion": "capability.meshery.io/v1beta1",
708
- * "version": "0.7.0",
709
- * "displayName": "Relationships",
710
- * "description": "View relationships for the component",
711
- * "kind": "view",
712
- * "type": "configuration",
713
- * "subType": "relationship",
714
- * "key": "",
715
- * "entityState": [
716
- * "declaration",
717
- * "instance"
718
- * ],
719
- * "status": "enabled",
720
- * "metadata": null
721
- * },
722
- * {
723
- * "schemaVersion": "capability.meshery.io/v1beta1",
724
- * "version": "0.7.0",
725
- * "displayName": "Json Schema",
726
- * "description": "View Component Definition ",
727
- * "kind": "view",
728
- * "type": "configuration",
729
- * "subType": "definition",
730
- * "key": "",
731
- * "entityState": [
732
- * "declaration",
733
- * "instance"
734
- * ],
735
- * "status": "enabled",
736
- * "metadata": null
737
- * },
738
- * {
739
- * "schemaVersion": "capability.meshery.io/v1beta1",
740
- * "version": "0.7.0",
741
- * "displayName": "Styling",
742
- * "description": "Configure the visual styles for the component",
743
- * "kind": "mutate",
744
- * "type": "style",
745
- * "subType": "",
746
- * "key": "",
747
- * "entityState": [
748
- * "declaration"
749
- * ],
750
- * "status": "enabled",
751
- * "metadata": null
752
- * },
753
- * {
754
- * "schemaVersion": "capability.meshery.io/v1beta1",
755
- * "version": "0.7.0",
756
- * "displayName": "Change Shape",
757
- * "description": "Change the shape of the component",
758
- * "kind": "mutate",
759
- * "type": "style",
760
- * "subType": "shape",
761
- * "key": "",
762
- * "entityState": [
763
- * "declaration"
764
- * ],
765
- * "status": "enabled",
766
- * "metadata": null
767
- * },
768
- * {
769
- * "schemaVersion": "capability.meshery.io/v1beta1",
770
- * "version": "0.7.0",
771
- * "displayName": "Compound Drag And Drop",
772
- * "description": "Drag and Drop a component into a parent component in graph view",
773
- * "kind": "interaction",
774
- * "type": "graph",
775
- * "subType": "compoundDnd",
776
- * "key": "",
777
- * "entityState": [
778
- * "declaration"
779
- * ],
780
- * "status": "enabled",
781
- * "metadata": null
782
- * }
783
- * ]
784
- */
785
- capabilities?: {
786
- /**
787
- * @description Specifies the version of the schema to which the capability definition conforms.
788
- * @example [
789
- * "v1",
790
- * "v1alpha1",
791
- * "v2beta3",
792
- * "v1.custom-suffix",
793
- * "models.meshery.io/v1beta1",
794
- * "capability.meshery.io/v1alpha1"
795
- * ]
796
- */
797
- schemaVersion: string;
798
- /** @description Version of the capability definition. */
799
- version: string;
800
- /** @description Name of the capability in human-readible format. */
801
- displayName: string;
802
- /** @description A written representation of the purpose and characteristics of the capability. */
803
- description: string;
804
- /** @description Top-level categorization of the capability */
805
- kind: string;
806
- /** @description Classification of capabilities. Used to group capabilities similar in nature. */
807
- type: string;
808
- /** @description Most granular unit of capability classification. The combination of Kind, Type and SubType together uniquely identify a Capability. */
809
- subType: string;
810
- /** @description Key that backs the capability. */
811
- key: string;
812
- /** @description State of the entity in which the capability is applicable. */
813
- entityState: ("declaration" | "instance")[];
814
- /**
815
- * @description Status of the capability
816
- * @default enabled
817
- * @enum {string}
818
- */
819
- status: "enabled" | "disabled";
820
- /** @description Metadata contains additional information associated with the capability. Extension point. */
821
- metadata?: { [key: string]: unknown };
822
- }[];
823
- /**
824
- * @description Status of component, including:
825
- * - duplicate: this component is a duplicate of another. The component that is to be the canonical reference and that is duplicated by other components should not be assigned the 'duplicate' status.
826
- * - maintenance: model is unavailable for a period of time.
827
- * - enabled: model is available for use for all users of this Meshery Server.
828
- * - ignored: model is unavailable for use for all users of this Meshery Server.
829
- * @default enabled
830
- * @enum {string}
831
- */
832
- status?: "ignored" | "enabled" | "duplicate" | "resolved" | "open";
833
- /** @description Metadata contains additional information associated with the component. */
834
- metadata: {
835
- /** @description Genealogy represents the various representational states of the component. */
836
- genealogy: string;
837
- /**
838
- * @description Identifies whether the component is semantically meaningful or not; identifies whether the component should be treated as deployable entity or is for purposes of logical representation.
839
- * @default false
840
- */
841
- isAnnotation: boolean;
842
- /** @description Identifies whether the component is scoped to namespace or cluster wide. */
843
- isNamespaced: boolean;
844
- /** @description 'published' controls whether the component should be registered in Meshery Registry. When the same 'published' property in Models, is set to 'false', the Model property takes precedence with all Entities in the Model not being registered. */
845
- published: boolean;
846
- /** @description InstanceDetails contains information about the instance of the component. */
847
- instanceDetails: { [key: string]: unknown };
848
- /** @description Defines the UI schema for rendering the component's configuration. For more details, visit: https://rjsf-team.github.io/react-jsonschema-form/docs/api-reference/uiSchema/ . */
849
- configurationUISchema: string;
850
- } & { [key: string]: unknown };
851
- /** @description The configuration of the component. The configuration is based on the schema defined within the component definition(component.schema). */
852
- configuration: { [key: string]: unknown };
853
- /** @description Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object. */
854
- component: {
855
- /** @description Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod. */
856
- version: string;
857
- /** @description The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'. */
858
- kind: string;
859
- /** @description JSON schema of the object as defined by the registrant. */
860
- schema: string;
861
- };
862
- /**
863
- * Format: date-time
864
- * @description Timestamp when the component was created.
865
- */
866
- createdAt: string;
867
- /**
868
- * Format: date-time
869
- * @description Timestamp when the component was last updated.
870
- */
871
- updatedAt: string;
872
- /**
873
- * Format: date-time
874
- * @description Timestamp when the component was soft-deleted. Null while the component is active.
875
- */
876
- deletedAt?: string;
877
780
  };
878
- /** @description Data related to the third-party capability that a ComponentDefinition wraps; this payload is treated as a hermetically sealed, opaque object. */
879
- Component: {
880
- /** @description Version of the component produced by the registrant. Example: APIVersion of a Kubernetes Pod. */
881
- version: string;
882
- /** @description The unique identifier (name) assigned by the registrant to this component. Example: A Kubernetes Pod is of kind 'Pod'. */
883
- kind: string;
884
- /** @description JSON schema of the object as defined by the registrant. */
885
- schema: string;
886
- };
887
- };
781
+ responses: never;
782
+ parameters: never;
783
+ requestBodies: never;
784
+ headers: never;
785
+ pathItems: never;
888
786
  }
889
-
890
- export interface operations {}
891
-
892
- export interface external {}
787
+ export type $defs = Record<string, never>;
788
+ export type operations = Record<string, never>;